这篇文章主要介绍php在调用webservice时报错怎么办,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
要用到 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在调用webservice时报错怎么办”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。