Problem :
Recently, I have a new apps and got some errors:
Fatal
error: Call to undefined function mb_detect_encoding()
Cause:
This error occurs because the new application requires mbstring extension.
Solution:
So here is the solution.
1. Check phpinfo();
It seem that extension does not appear in phpinfo.
2. Check Extension
[root@intranet newapps]# rpm -qa | grep php-mbstring
[root@intranet newapps]# rpm -qa | grep php
php-pear-1.9.4-4.el6.noarch
php-ldap-5.3.3-3.el6_2.8.x86_64
php-common-5.3.3-3.el6_2.8.x86_64
php-xml-5.3.3-3.el6_2.8.x86_64
php-cli-5.3.3-3.el6_2.8.x86_64
php-gd-5.3.3-3.el6_2.8.x86_64
php-pdo-5.3.3-3.el6_2.8.x86_64
php-devel-5.3.3-3.el6_2.8.x86_64
php-5.3.3-3.el6_2.8.x86_64
mbstring extension is not currently installed
3. Search On Yum
[root@intranet newapps]# yum search php-mbstring
Loaded plugins: refresh-packagekit, security
==================================== N/S Matched: php-mbstring ====================================
php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
4. Install mbstring extension
[root@intranet newapps]# yum install php-mbstring
5. Restart apache
[root@intranet newapps]# service httpd restart
6. Check phpinfo();
mbstring already installed and appear in phpinfo();
We can edit the mbstring value in /etc/php.ini
7. Check the new apps