JSON から値を抽出していますが、値をエコーすると空の結果が返され続けます
$json='[[{"transTime":"2013-10-23 17:30:42","Forename":"Ian","Surname":"Graham","Address Line 1":"RG412GX"}]]';
$obj2 = json_decode($json, true);
$displayName = $obj2->Surname;
echo"$displayName";
あなたが提供したコードにはいくつかの問題があります。まず、json テキストは に保存されて$json
いますが、デコードしようとしています$xmlresponse
。ただし、それは単なるコピー/貼り付けエラーだと思います。次に、オブジェクト構文を使用して姓にアクセスしようとしますが、json_decode
オブジェクトを連想配列としてデコードすることを明示的に強制します。3 番目に、提供された json は、配列内の配列内のオブジェクトをエンコードします。応答のネストされた構造を無視します。
これを試して:
$json='[[{"transTime":"2013-10-23 17:30:42","Forename":"Ian","Surname":"Graham","Address Line 1":"RG412GX"}]]';
$response = json_decode($json);
$displayName = $response[0][0]->Surname;
echo $displayName;