我正在尝试一个简单的Web服务示例,即使extension=php_soap.dll
在php.ini
文件中未添加注释,我也会收到此错误:
致命错误:在第2行的C:\ Program Files(x86)\ EasyPHP-5.3.9 \ www \ server.php中找不到类'SoapClient'
我正在尝试一个简单的Web服务示例,即使extension=php_soap.dll
在php.ini
文件中未添加注释,我也会收到此错误:
致命错误:在第2行的C:\ Program Files(x86)\ EasyPHP-5.3.9 \ www \ server.php中找不到类'SoapClient'
Answers:
诊断
在脚本文件中查找以下内容
phpinfo();
如果找不到喜欢的Soap Client
集合enabled
:
固定
请执行下列操作:
php.ini
您的apache bin文件夹,即Apache/bin/php.ini
;
从开头删除extension=php_soap.dll
phpinfo();
再次查找并检查是否与上述图片相似另一方面,如果这不能解决您的问题,则可能需要在此处检查SOAP的要求。另外,在评论部分,您可以找到有关连接到https的好的建议。
;extension=php_openssl.dll
如果您要访问的WSDL在https协议下
extension=soap
不加注释就可以了。
SoapClient
仍然找不到该课程。我在phpinfo()中看到已启用它,启用了扩展名,也启用了openssl,一切正常,但未找到该类。我使用Wampserver 3.0和PHP 5.6,但重新启动了Apache,但不能解决问题。请帮忙。
要在PHP-7中安装SOAP,请在Ubuntu终端中运行以下命令:
sudo apt-get install php7.0-soap
要在PHP-7.1中安装SOAP,请在Ubuntu终端中运行以下命令:
sudo apt-get install php7.1-soap
要在PHP-7.2中安装SOAP,请在Ubuntu终端中运行以下命令:
sudo apt-get install php7.2-soap
要在PHP-7.3中安装SOAP,请在您的Ubuntu终端中运行以下命令:
sudo apt-get install php7.3-soap
sudo apt-get install php-soap
sudo apt-get install php7.2-soap
对于AWS(RHEL):
sudo yum install php56-soap
(这里的56是5.6 PHP版本-在此处放置您的版本)。
sudo yum install php56w-soap
!我忘了w,它安装了,但仍然没有用。花了一段时间才能弄清楚,但现在可以了。
我必须跑步
php-config --configure-options --enable-soap
以root身份并重新启动apache。
可行!现在,我的phpinfo()调用显示了SOAP部分。
reboot
应该提到的是,它的apache重新启动,而不是服务器重新启动。
我找不到该SOAP
部分,phpinfo()
因此我必须安装它。
有关信息,该SOAP
扩展需要libxml
PHP扩展。这意味着--enable-libxml
根据http://php.net/manual/en/soap.requirements.php也需要传递
从WHM面板
安装SOAP 0.13.0
警告:不赞成使用“ pear / HTTP_Request”,而建议使用“ pear / HTTP_Request2”
确定安装:channel://pear.php.net/SOAP-0.13.0
安装HTTP_Request2(可选)
确定安装:channel://pear.php.net/HTTP_Request2
重新启动服务»HTTP服务器(Apache)
从shell命令
1.pear安装SOAP
2.重启
对于Docker *,请添加以下行:
RUN apt-get update && \
apt-get install -y libxml2-dev && \
docker-php-ext-install soap
*:对于基于debian的图像,即。不适用于高山变种。
对于XAMPP用户,请打开中的php.ini
文件,C:/xampp/php
然后;
从中删除extension=soap
。然后重新启动Apache,就是这样!