我正在尝试一个简单的 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”
诊断
在脚本文件中查找以下内容
phpinfo();
如果你找不到这样Soap Client
的设置enabled
:
使固定
请执行下列操作:
php.ini
你的apache bin 文件夹,即Apache/bin/php.ini
;
从开头删除extension=php_soap.dll
phpinfo();
并检查您是否看到与上一张相似的图片另一方面,如果这不能解决您的问题,您可能需要在此处检查 SOAP 的要求。同样在评论部分,您可以找到有关连接到 https 的好建议。
要在 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
对于 AWS (RHEL):
sudo yum install php56-soap
(这里的 56 是 5.6 PHP 版本 - 把你的版本放在这里)。
要在 PHP5.6 中安装 SOAP,请在 Ubuntu 14.04 终端中运行以下命令:
sudo apt-get install php5.6-soap
service php5.6-fpm restart
service apache2 restart
查看是否启用了 SOAP:
php -m
(您应该在返回的文本之间看到 SOAP。)
我不得不跑
php-config --configure-options --enable-soap
以root身份重新启动apache。
那行得通!现在我的 phpinfo() 调用显示了 SOAP 部分。
我在 PHP 7.0.22-0ubuntu0.16.04.1 nginx 上解决了这个问题
sudo apt-get install php7.0-soap
sudo systemctl restart php7.0-fpm
sudo systemctl restart nginx
我找不到该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.重启
对于XAMPP 用户,打开php.ini
位于 中C:/xampp/php
的文件并;
从extension=soap
. 然后重新启动Apache,就是这样!
对于 Docker* 添加这一行:
RUN apt-get update && \
apt-get install -y libxml2-dev && \
docker-php-ext-install soap
*:对于基于 debian 的图像,即。不适用于高山变体。
对于 PHP 7.4 和 Docker,在 Dockerfile 中添加这一行:
RUN apt-get update && apt-get install -y \
libxml2-dev \
RUN docker-php-ext-install soap
重建映像并重新启动;)
在 Centos 7.8 和 PHP 7.3 上
yum install php-soap
service httpd restart
对于 PHP 8:
sudo apt update
sudo apt-get install php8.0-soap
就我而言,Symfony 缓存导致了问题,运行后composer install
问题就消失了。