我正在尝试一个简单的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

重新构建映像并重新启动;)

其他回答

我也遇到过类似的问题。这是由于范围的问题,并通过用新的\SoapClient取代新的SoapClient来解决。

用于PHP 7.4和Docker 在Dockerfile中添加这一行:

RUN apt-get update && apt-get install -y \
libxml2-dev \

RUN docker-php-ext-install soap

重新构建映像并重新启动;)

在我的案例中,Symfony缓存导致了问题, 运行composer安装后,问题消失了。

对于PHP 8:

sudo apt update
sudo apt-get install php8.0-soap

在Centos 7.8和PHP 7.3上

yum install php-soap
service httpd restart