我正在尝试一个简单的web服务示例,即使我在php.ini文件中未注释extension=php_soap.dll,我也会得到这个错误:

致命错误:类'SoapClient'没有在C:\Program Files (x86)\ EasyPHP-5.3.9\www\server.php第2行找到


当前回答

对于PHP 8:

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

其他回答

用于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

要在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。)

对于Docker*添加这一行:

RUN apt-get update && \
    apt-get install -y libxml2-dev && \
    docker-php-ext-install soap

*:对于基于debian的图像,即。对高山变种无效。

我不得不逃跑

php-config --configure-options --enable-soap 

以root用户重启apache。

那工作!现在我的phpinfo()调用显示SOAP部分。