1,問題:php的mbstring擴充無法被正常載入。
2,環境:centos7.2虛擬機,PHP Version => 7.0.8
我的php是透過yum 安裝的,安裝來源用的是webstatic的,mbstring擴充也是採用的這個來源,版本也對。
查看/etc/php.d/mbstring.ini中擴充是開啟的,/lib64/php/modules/mbstring.so也是存在的。
但呼叫mb_strlen()函數時報錯誤:
3,程式碼與錯誤
<code> 1 <?php 2 $len = mb_strlen('hello world'); </code>
<code>PHP Fatal error: Uncaught Error: Call to undefined function mb_strlen() in /var/www/php-test/mb-encoding/mb-strlen.php:2 349 Stack trace: 350 #0 {main} 351 thrown in /var/www/php-test/mb-encoding/mb-strlen.php on line 2 </code>
4,補充:
php -m中是有的
<code>> php -m | grep mbstring mbstring</code>
但php -info中沒有
5,已解決:
之前有人問過這個問題:https://segmentfault.com/q/10...
1,問題:php的mbstring擴充無法被正常載入。
2,環境:centos7.2虛擬機,PHP Version => 7.0.8
我的php是透過yum 安裝的,安裝來源用的是webstatic的,mbstring擴充也是採用的這個來源,版本也對。
查看/etc/php.d/mbstring.ini中擴充是開啟的,/lib64/php/modules/mbstring.so也是存在的。
但呼叫mb_strlen()函數時報錯誤:
3,程式碼與錯誤
<code> 1 <?php 2 $len = mb_strlen('hello world'); </code>
<code>PHP Fatal error: Uncaught Error: Call to undefined function mb_strlen() in /var/www/php-test/mb-encoding/mb-strlen.php:2 349 Stack trace: 350 #0 {main} 351 thrown in /var/www/php-test/mb-encoding/mb-strlen.php on line 2 </code>
4,補充:
php -m中是有的
<code>> php -m | grep mbstring mbstring</code>
但php -info中沒有
5,已解決:
之前有人問過這個問題:https://segmentfault.com/q/10...
<code>php -m | grep mbstring</code>
這個在就在,不在就不在了
不在的話要重新下載mbstring源碼,編譯安裝
上面是題主修改之前的答案。 。
ini裡面沒有載入擴充功能, php -m 裡面會有?
php-cli和php-cgi是同一個版本的php?
不會是本機有兩個版本的php..
之前有人問過這個問題,可以參考這個提問,https://segmentfault.com/q/10...。
主要原因是安裝擴充功能後,php-fpm(FastCGI Process Manager:FastCGI進程管理器)沒有重啟,導致cgi和cli載入的php設定檔不一致。