JSON 形式でデータを送信する Web サービスからの応答を処理する場合、応答を解析してその結果を抽出することは、その後の処理のために重要です。 PHP の cURL 関数と json_decode 関数を使用してこれを実現する方法は次のとおりです。
cURL リクエストのサンプルを指定します。
$url = 'http://sms2.cdyne.com/sms.svc/SimpleSMSsendWithPostback? PhoneNumber=18887477474&Message=test&LicenseKey=LICENSEKEY'; $cURL = curl_init(); curl_setopt($cURL, CURLOPT_URL, $url); curl_setopt($cURL, CURLOPT_HTTPGET, true); curl_setopt($cURL, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Accept: application/json' )); $result = curl_exec($cURL); curl_close($cURL);
このリクエストからの応答は、以下に示すように JSON 文字列です。
{ "Cancelled": false, "MessageID": "402f481b-c420-481f-b129-7b2d8ce7cf0a", "Queued": false, "SMSError": 2, "SMSIncomingMessages": null, "Sent": false, "SentDateTime": "/Date(-62135578800000-0500)/" }
この JSON 文字列を解析し、操作しやすい配列またはオブジェクトに変換するには、次を使用します。 PHP の json_decode 関数:
$json = json_decode($result, true);
json_decode の 2 番目のパラメーターを true に設定すると、出力は連想配列になります。これにより、以下に示すように、配列キーを使用して JSON データに簡単にアクセスできるようになります。
echo $json['MessageID']; echo $json['SMSError'];
これで、解析された JSON 結果に簡単にアクセスでき、さらなる処理を続行できるようになります。
:
以上がPHP の `json_decode` 関数を使用して cURL からの JSON 応答を解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。