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

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


当前回答

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

其他回答

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

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

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

你必须继承nusoop。php类并把它放到你的项目目录中,你可以从网上下载。

使用以下代码:

require_once('nusoap.php');

对于XAMPP用户,打开位于C:/ XAMPP /php中的php.ini文件并删除;从extension=soap开始。然后重新启动Apache,就是这样!