首頁 >後端開發 >php教程 >為什麼有PHP Class SoapClient not found問題以及解決方法

為什麼有PHP Class SoapClient not found問題以及解決方法

php中世界最好的语言
php中世界最好的语言原創
2018-05-19 14:35:433709瀏覽

這次帶給大家為什麼有PHP Class SoapClient not found問題以及解決方法,解決PHP Class SoapClient not found問題的注意事項有哪些,下面就是實戰案例,一起來看一下。

要用到 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-dir
extension_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

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

php中echo用逗號和用點號使用步驟總結

CI框架(CodeIgniter)操作redis步驟解析

#

以上是為什麼有PHP Class SoapClient not found問題以及解決方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn