Google Earth(TM) 地図サービスのオススメスポット・Wiki更新状況・おもしろい情報の紹介などを書き綴っていきます。

木曜日, 9月 21, 2006

考察 ~ YahooAuctionAPI

 Yahoo Auction API WCCFについてです。ブログの元記事はこちらです。  とりあえずソースはこちらです↓  earthauction.txt  変数「$xml」に代入してあるアドレスに「*」印がついています。ここは自分で取得するIDになりますので、Yahoo!デベロッパーネットワークを見て取得することになります。  また、続いてパラメータが設定してありますので、こちらもサイト上で確認する事になります。ちなみにこのソースで設定してあるのは「カテゴリー」と「サムネイル有り」の2点だけです。カテゴリーを変更したり、アイテムの絞込みをすることで、他の出品物に変更する事が可能です。  PHPでXMLを扱う時に重要なのは「PHP4」か「PHP5」かという違いではないでしょうか。「PHP5」を利用しているのであれば「SimpleXML」を利用すれば良いのでしょうが、「PHP4」においてはパーサを利用することになります。  こういった事情を簡単に解決するのがインクルードしてある「xml.php」というスクリプトです。XMLをPHPの配列にして返すという優れものです。これは「PHP XML Library, version 1.2b」というスクリプトで、リンク先からダウンロードできます。(Ajax非同期通信の際にXMLを一度呼び込むのにも併せての利用も考えられますね。)  どのように配列にされているのかは、リンク先にある「XML to PHP translator」で確認する事が出来ます。このサイトにXMLファイルのありかを入力(この場合は変数$xmlで設定したAPI)して「Translate」ボタンを押すと、元のXMLと併せて配列を表示してくれます。 include('xml.php'); $data = XML_unserialize($xml);  この2行によってxml.phpが呼び出され、$dataに配列が作成されています。  具体的な使い方を挙げてみますと、プレースマークの名前を意味する<name>タグのところにある、「$data["AuctionCategoryLeaf"]["item"][$i]["title"]」という記述があります。このような感じで利用できます。  ちなみに、このスクリプトは逆の操作、即ち「配列→XML」という操作も出来るようです。自分は試してはいないのですが興味のある方は「XML_unserialize」を「XML_serialize」にして試してみてください。kmlファイルを配列から簡単に制作できるのでは?と、想像しています。  肝心なタイムスケールについては、日付や時刻に関するフォーマットが違っているのかどうか分かりませんが、「Z」の部分を他の形にするとグーグルアースが固まってしまいました。これは元記事でも紹介したとおりです。  とりあえず以上です。

0 コメント: