PHP 8.1 是否破坏了内部类 SoapClient 的功能?
P粉615886660
P粉615886660 2023-12-12 22:52:40
0
1
534

在制作一个使用 PHP 的 SoapClient 且与 PHP 8.1 兼容的库时,我遇到了这个问题:

SoapClient 的所有属性在以前是公开的时现在都是私有的。 因此,诸如获取最后一个肥皂故障($soapClient->__soap_fault)之类的事情不再可能。但如果出现问题,SoapClient 的大多数方法都会返回 null,而了解问题所在的唯一方法是获取不再可访问的 __soap_fault

在无法访问 SoapClient 属性的情况下,我应该如何使用方法 __doRequest

P粉615886660
P粉615886660

全部回复(1)
P粉969666670

查看旧的 SoapClient 文档,似乎直接访问属性总是错误 - 对于 php7.2 例如根据回程机器, __soap_fault 根本没有记录(参见 https://web.archive.org/web/20171211100753/http://us3.php.net/manual/en/class.soapclient。 php)

文档说明如下:

我想说,请确保启用了异常(通过将 $options['exceptions'] => true 传递给 SoapClient 构造函数)并在 try/catch 中处理这些异常 相应地。如果这没有帮助,一个带有未正确处理的具体错误的新问题可能会更有帮助。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板