デバッグ用にSoapClientのリクエストやレスポンスをダンプするにはどうすればいいですか? 質問する

デバッグ用にSoapClientのリクエストやレスポンスをダンプするにはどうすればいいですか? 質問する

クラスを使用するコードをデバッグする必要がありますSoapClient。 のように文書化されたメソッドを見つけました__getLastRequest()が、 しか返されませんnull

$client = new SoapClient("https://example.com/service.wsdl");

$response = $client->DoFunction([
    "Parameter1" => 100,
]);
        
echo "====== REQUEST HEADERS =====" . PHP_EOL;
var_dump($client->__getLastRequestHeaders());
echo "========= REQUEST ==========" . PHP_EOL;
var_dump($client->__getLastRequest());
echo "===== RESPONSE HEADERS =====" . PHP_EOL;
var_dump($client->__getLastResponse());
echo "========= RESPONSE =========" . PHP_EOL;
var_dump($response);

コード実行の結果:

====== REQUEST HEADERS =====
NULL
========= REQUEST ==========
NULL
===== RESPONSE HEADERS =====
NULL
========= RESPONSE =========
object(stdClass)#2 (1) {
  ["FunctionResult"]=>
  float(0.0746)
}

使用しているデバッグ関数から結果を取得するにはどうすればよいですか?

ベストアンサー1

これらの機能SoapClientオブジェクトが作成された場合にのみ機能しますトレースオプションをTRUEに設定

試す:

$client = new SoapClient("http://www.webservicex.net/ConverPower.asmx?WSDL", array('trace' => 1));

おすすめ記事