PHP警告:模塊'???'已經在第0行的Unknown中加載
本頁介紹如何解決以下PHP警告: PHP警告:模塊'modulename'已在第0行中的Unknown中加載
例如:
PHP Warning: Module 'redis' already loaded in Unknown on line 0
問題
從命令行運行CLI版本的PHP時,可能會收到類似以下的錯誤:
[root @ myserver / root] $ php -v
PHP警告:模塊'pcre'已經在第0行加載了Unknown
PHP警告:PHP啓動:無法加載動態庫'/usr/local/php5/lib/php/extensions/no-debug-non-zts-20060613/spl.so' - / usr / local / php5 / lib / php /extensions/no-debug-non-zts-20060613/spl.so:第0行未知中的未定義符號“pcre_exec”
PHP警告:Module'SimpleXML'已經在第0行的Unknown中加載
PHP警告:模塊“會話”已在第0行的未知中加載
PHP警告:模塊'exif'已經在第0行加載了Unknown
PHP 5.2.3(cli)(內置:2007年6月14日15:29:17)
版權所有(c)1997-2007 The PHP Group
Zend Engine v2.2.0,版權所有(c)1998-2007 Zend Technologies
原因
有兩種方法可以在PHP中加載大多數擴展。 一種是直接將擴展編譯到PHP二進制文件中。另一種是通過一個ini文件動態加載共享擴展。 錯誤表明動態擴展正在通過.ini文件加載,即使它們已經被編譯到PHP二進制文件中。
固定
要解決這個問題,你必須編輯你的php.ini(或extensions.ini)文件並註釋掉已經編譯好的擴展。 例如,在編輯之後,您的ini文件可能如下所示:
;延長= pcre.so ;延長= spl.so ;延長= simplexml.so ;延長= session.so ;延長= exif.so
您也可以刪除這些行,而不是將它們註釋掉。 一旦你禁用了這些行,運行php -v
來查看警告是否消失。
附加信息
要查看哪些擴展被編譯到您的PHP二進制文件中,請運行以下命令:
php -m
您還可以查看configure命令,該命令將顯示啓用和編譯哪些擴展,或構建爲共享的動態模塊。
php -i | grep配置
動態擴展通常位於特殊的“擴展”文件夾中,該文件夾因操作系統環境而異。 你的php.ini通常有一行描述文件夾的位置。 例如:
; 可加載擴展名(模塊)所在的目錄。 extension_dir =“/ usr / local / php5 / lib / php / extensions / no-debug-non-zts-20060613 /”
免責聲明:此內容按原樣提供。 信息可能不正確。