Beeinträchtigt PHP 8.1 die Funktionalität der inneren Klasse SoapClient?
P粉615886660
P粉615886660 2023-12-12 22:52:40
0
1
488

Beim Erstellen einer Bibliothek, die den SoapClient von PHP verwendet und mit PHP 8.1 kompatibel ist, bin ich auf dieses Problem gestoßen:

Alle Eigenschaften von SoapClient sind jetzt privat, während sie zuvor öffentlich waren. Also Dinge wie den letzten Seifenfehler ($soapClient->__soap_fault)之类的事情不再可能。但如果出现问题,SoapClient 的大多数方法都会返回 null,而了解问题所在的唯一方法是获取不再可访问的 __soap_fault.

Wie soll ich Methoden verwenden __doRequest, wenn ich keinen Zugriff auf SoapClient-Eigenschaften habe?

P粉615886660
P粉615886660

Antworte allen(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 中处理这些异常 相应地。如果这没有帮助,一个带有未正确处理的具体错误的新问题可能会更有帮助。

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage