linux - centos7下php7的mbstring擴充無法正常加載,該如何解決? --已解決,

WBOY
發布: 2016-08-04 09:19:53
原創
2821 人瀏覽過

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設定檔不一致。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板