次の JSON 応答の例があります (通常は長い応答)。
"responseHeader":{
"status":0,
"QTime":2,
"params":{
"indent":"true",
"start":"0",
"q":"hi",
"wt":"json",
"rows":"2"}},
"response":{"numFound":69,"start":0,"docs":[
{
"id":335,
"Page":127,
"dartext":" John Said hi ! ",
"Part":1},
{
"id":17124,
"Page":127,
"Tartext":" Mark said hi ",
"Part":10}]
}}
文字列のタイプのプロパティにのみアクセスしたいのですが、問題はプロパティの名前が一定ではないため、次のようなものを使用できません。
$obj =json_decode(file_get_contents($data));
$count = $obj->response->numFound;
for($i=0; $i<count($obj->response->docs); $i++){
echo $obj->response->docs[$i]->dartext;
}
他のオブジェクトでは dartext ではなく、Tartext であるためです。
名前ではなくインデックスで3番目のプロパティにアクセスするにはどうすればよいですか?