I am trying to do a composer install ...
, but getting an error of requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
I am using Apache (Cpanel) and PHP 5.6.
Below are the ways I am trying to fix the error.
1: yum search mbstring
============================================= N/S matched: mbstring =============================================
ea-php54-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php55-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php56-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php70-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php71-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php72-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
rh-php56-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
rh-php70-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
rh-php71-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
2: yum install ea-php56-php-mbstring.x86_64
Loaded plugins: fastestmirror, universal-hooks
Loading mirror speeds from cached hostfile
* EA4: 110.4.45.120
* cpanel-addons-production-feed: 110.4.45.120
* base: ftp.cuhk.edu.hk
* centosplus: ftp.cuhk.edu.hk
* epel: ftp.cuhk.edu.hk
* extras: ftp.cuhk.edu.hk
* ius: hkg.mirror.rackspace.com
* updates: ftp.cuhk.edu.hk
Package ea-php56-php-mbstring-5.6.35-1.1.5.cpanel.x86_64 already installed and latest version
Nothing to do
It seems mbstring is installed but why I got an error when I try to composer install?
Another way (update PHP version in cPanel)
1: WHM – already set to 7.1
2: cPanel – already set to 7.1
but version in server still 5.6
Any suggestions to resolve require ext-mbstring
error?
5
Answers
Installing rh can solve this issue
yum install rh-php56-php-mbstring.x86_64
Please double check what you have in your server. Mine is
rh-php56-php-mbstring.x86_64
notphp-mbstring
Use this command to install mbstrig
Once installed restart apache
Try installing mbstring php library with aptitude.
If there are no deeper dependencies down the line, you could use a polyfill instead: edit the composer.json and replace the problem line with
"symfony/polyfill-mbstring": "~1.0"
https://packagist.org/packages/symfony/polyfill-mbstring
I recently had a similar issue when trying to run a build for my PHP WordPress site. I ended up updating the
composer.json
with the snippet below in therequire
section:Hopefully this can become useful to others in the future!