初めてAmazon APIで開発してます。
Amazonへリクエストを送って、結果を取得する所まで出来ました。
受け取った結果(XMLデータ)を、一覧画面(cakePHPのPaginator)に出力しようと思いました。
※XMLはファイルではなく、データです。
そこでXMLデータを配列に変換しようと思い、以下のようにコーディングしましたが、
配列に何も取得出来ません。
変換後の配列をデバッグすると
array(0) {
}
と表示されます・・・。
foreachで確認するとちゃんと結果は取得出来ています。
PHP
1 2 //リクエスト送信 3 $result = $this->amazon->request($url); 4 5 $xml = new Xml($result); 6 7 8 $array = Set::reverse($xml); 9 10 //結果は、array(0) {]となります・・・orz 11 var_dump($array); 12 13 //こっちはOK 14 foreach($result->Items->Item as $item) 15 { 16 var_dump($item->ItemAttributes->Title); // 商品名 17 18 } 19
上記は、$this->amazonのアマゾンクラスは省略してました。追記します。
以下を参考にしました
http://blog.codebook-10000.com/entry/20131112/1384191896
XMLから配列に変換する方法が間違っているでしょうか?
foreachで回しながら1つずつ配列にする方法が正しいのでしょうか?
そもそもAmazonの結果(XML)を画面に出力する場合、今回のような流れであっているのでしょうか?
cakePHPのバージョンは2.xです。
以上、分かる方居ましたらアドバイス宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー