我正在尝试一个简单的web服务示例,即使我在php.ini文件中未注释extension=php_soap.dll,我也会得到这个错误:
致命错误:类'SoapClient'没有在C:\Program Files (x86)\ EasyPHP-5.3.9\www\server.php第2行找到
我正在尝试一个简单的web服务示例,即使我在php.ini文件中未注释extension=php_soap.dll,我也会得到这个错误:
致命错误:类'SoapClient'没有在C:\Program Files (x86)\ EasyPHP-5.3.9\www\server.php第2行找到
当前回答
用于PHP 7.4和Docker 在Dockerfile中添加这一行:
RUN apt-get update && apt-get install -y \
libxml2-dev \
RUN docker-php-ext-install soap
重新构建映像并重新启动;)
其他回答
对于XAMPP用户,打开位于C:/ XAMPP /php中的php.ini文件并删除;从extension=soap开始。然后重新启动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
我在phpinfo()中找不到SOAP部分,所以我必须安装它。
有关信息,SOAP扩展需要libxml PHP扩展。这意味着根据http://php.net/manual/en/soap.requirements.php,还需要传入——enable-libxml
来自WHM面板
软件»模块安装程序»PHP扩展和应用程序包 安装SOAP 0.13.0 警告:"pear/HTTP_Request"已弃用,改为"pear/HTTP_Request2" 安装ok: channel://pear.php.net/SOAP-0.13.0 安装HTTP_Request2(可选) 安装ok: channel://pear.php.net/HTTP_Request2 重启服务»HTTP服务器(Apache)
从shell命令
1.pear安装SOAP
2.重新启动
在我的案例中,Symfony缓存导致了问题, 运行composer安装后,问题消失了。
对于PHP 8:
sudo apt update
sudo apt-get install php8.0-soap