APIの勉強を始めてから、レスポンスはすべてXMLで扱ってきた。JSONがいいという話をきいてはいたが、JSONを扱うにはJavaScriptじゃないとだめだとおもっていた。なので、最近はjQueryのgetJSONを勉強しているのだが、先日、@suinさんから、PHPでもjson_decodeを使えば簡単だよというコメントをもらった。
で、さっき試してみたのだが、配列の扱いではまったもののなんとか使えるようになりそう。
はまったポイントは、
$usedcar = $hoge->result->usedcar
これまでは、上記の方法でusedcarの配列データを受け取っていたのが、json_decodeをしたデータではうまくいかなかったとこ。
@suin先生に相談したところ、
$hoge[‘result’][‘usedcar’]
で、よいとのこと。
ということで、JSONで受け取ったデータも、下記の方法で扱うことができるようになった。
$hoge = json_decode(file_get_contents($url), true); $usdecar = $hoge['results']['usedcar']; foreach ( $usedcar as $key => $value ) { echo $key."<br />"; echo $value['model']."<br />"; echo $value['price']."<br />"; echo $value['brand']['name']."<br />"; }