●JSONのパース
ツクモAPIが公開されたので、仕様を見てみたら、
(TSUKUMO WebAPI 第一弾のCategory APIを公開します)
なんと!!
XMLじゃなくて、JSON&YAMLでした。
Javascriptから手軽に使ってね、
ってことなんでしょう。
ちなみに、JSONってのは、
JavaScript Object Notation
の省略形。
YAMLってのは何なんだ?というのは置いといて、
PHPでは、JSONを手軽に扱えるようにはなっていないので、調べてみました。
Yahoo検索の地図関連のAPIもI/FはJSONなので、調べておいても損はないかな、と。
--
--
■PEARのServices/JSON
「Services_JSON」の提案
というパッケージがあるので、これを解凍し、
JSON.PHPをPEARインストールディレクトリのServicesディレクトリにコピー
(当然、PEARが使える状態になっていることが前提)
■Services_JSONの使い方
JSON.phpのソースファイルを見れば、使い方が書いてあるので、そのままでOKです。
require 'Services/JSON.php';
$categoryID = '101510000000000';
$req = 'http://shop.tsukumo.co.jp/dir/' . $categoryID . '.json' . '?sort=price';
$input = file_get_contents($req);
$json = new Services_JSON();
$value = $json->decode($input);
print('総数:' . $value->pager->total_entries . '<br><br>');
foreach($value->items as $items){
print '商品名:' . $items->name . '<br>';
print '概要:' . $items->summary . '<br>';
if( !empty($items->specs) ){
print '仕様:<br>';
print '<table border="1">';
foreach($items->specs as $specs){
print '<tr><td>' . $specs->name . '</td><td>' . $specs->value . '</td></tr>';
}
print '</table>';
}
print '<br>';
}
こんな感じで、simplexmlと同じように扱えるので、とっても簡単。
実際に使う場合は、file_get_contentsのところは、キャッシュに対応した関数を自分で用意して、それに差し替えてください。
--

Comments
コメント入力は停止しています
海外からと思われるコメントスパムが横行しているため、全記事のコメント入力を停止しています。メッセージのある方は、ホームページの一番下に連絡欄がありますので、そちらからお願いします。