要用到 SoapClient, new 了一個提示 Class ‘SoapClient not found, 檢查了下 phpinfo, 原因是當初沒有編譯這個擴展, 只好現在再加上了。
php在調用webservice時,報告如下類似錯誤:
( ! ) Fatal error: Class SoapClient not found in E:/WebSrv/CI/system/libraries/WebService.php on line 17
解決方法:
打開php.ini,找到php_soap.dll , 把前面的分號去掉
;extension=php_soap.dll
前提是,已經安裝了 php_soap.dll
筆者的 PHP 安裝在 /usr/local/php/ 目錄下,如果沒有安裝可以參考下面的方法
$ cd /home/downloads/php-5.6.12 # 進入到 PHP 源碼目錄$ cd ext/soap # 進入 soap 擴展目錄$ /usr/local/php/bin/phpize # 準備添加擴展$ ./configure -with-php-config=/usr/local/php/bin/php-config --enable-soap # 啟用 SOAP$ make$ make install
擴展安裝完成后提示擴展已安裝到這個目錄下:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
編輯 php.ini 文件, 啟用 extension_dir 擴展目錄, 添加 soap.so 擴展:
; Directory in which the loadable extensions (modules) reside.; http://php.net/extension-dirextension_dir = /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/ ; On windows:; extension_dir = ext extension=soap.so # 添加 SOAP 擴展
重啟 php-fpm 使生效
kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`
Windows 下編輯 php.ini 取消該行注釋即可
extension=php_soap.dll
相關推薦:
Lumen timezone 時區設置方法
php nginx 實時輸出的簡單實現方法的講解
PHP注釋語法規范與命名規范詳解
以上就是PHP Class SoapClient not found的解決方法的詳細內容,PHP教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答