Adakah PHP 8.1 memecahkan kefungsian kelas dalam SoapClient?
P粉615886660
P粉615886660 2023-12-12 22:52:40
0
1
509

Semasa membuat perpustakaan yang menggunakan SoapClient PHP dan serasi dengan PHP 8.1, saya menghadapi masalah ini:

Semua hartanah SoapClient kini bersifat peribadi apabila ia adalah awam sebelum ini. Jadi perkara seperti mendapat gangguan sabun terakhir ($soapClient->__soap_fault)之类的事情不再可能。但如果出现问题,SoapClient 的大多数方法都会返回 null,而了解问题所在的唯一方法是获取不再可访问的 __soap_fault.

Bagaimana saya harus menggunakan kaedah __doRequest apabila saya tidak mempunyai akses kepada sifat SoapClient?

P粉615886660
P粉615886660

membalas semua(1)
P粉969666670

Melihat yang lama SoapClient 文档,似乎直接访问属性总是错误 - 对于 php7.2 例如根据回程机器, __soap_fault tidak didokumenkan sama sekali (lihat https://web.archive.org/web/20171211100753/http://us3.php.net/manual/en/class.soapclient.php)

Penerangan dokumen adalah seperti berikut:

Saya akan katakan, pastikan anda mendayakan pengecualian (dengan menukar $options['exceptions'] => true 传递给 SoapClient 构造函数)并在 try/catch 中处理这些异常 sewajarnya. Jika itu tidak membantu, soalan baharu dengan ralat khusus yang tidak dikendalikan dengan betul mungkin lebih membantu.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan