2017-04-20 132 views
0

當我運行PHP的警告:PHP啓動:無法加載動態庫

php -v 

有像

PHP的警告的錯誤:PHP的啓動:無法加載動態庫「/ usr/lib目錄/php/20160303/php_mbstring.dll」 - /usr/lib/php/20160303/php_mbstring.dll:無法打開共享對象文件:沒有這樣的文件或目錄中的未知在線0

並試圖將溶液安裝mbstr荷蘭國際集團一樣

sudo apt-get install php-mbstring 

之後,隨着啓用它喜歡嘗試:

sudo phpdismod mbstring # disable mbstring extension 
sudo phpenmod mbstring # enable mbstring extension again 

但能夠找到解決方案也試圖與php.ini

+0

您的系統上有多少個php安裝檢查'/ etc /' –

+0

有兩個文件夾php5和php。在PHP中有3個不同的文件夾5.6,7.0,7.1 @MASIDDIQUI –

+0

這就是創建問題...在一個環境中它更好地安裝一個PHP,所以你可能會想到刪除5.6,7.0 –

回答

0

看起來好像您安裝了多個PHP版本。所有這些版本的PHP也可能指向相同的配置文件(php.ini)。這個配置文件然後加載一些擴展,這些擴展僅適用於一些PHP安裝,但不是全部。

此外,它好像在命令行中使用不同於您的Web服務器的PHP版本。

  • 如果從命令行運行php -i,將獲得有關默認PHP CLI(命令行界面)安裝的信息。
  • 如果您在htdocs(Web服務器)目錄中的某個位置添加文件phpinfo.php<?php phpinfo(); ?>,您會看到Web的默認PHP版本。

更奇怪的是,即使您似乎在Linux上,您仍然試圖加載Windows擴展程序php_mbstring.dll

您應該檢查每個安裝的PHP使用哪個配置文件。該信息是php -iphpinfo()輸出的一部分。確保不同版本的PHP使用不同的配置文件。

檢查通過grep -iRn 'php_mbstring.dll' /etc加載DLL文件的位置。刪除此行或將其更改爲Linux擴展(可能爲extension=mbstring.so)。

相關問題