php, SimpleXML, извлечение информации из массива - PullRequest
0 голосов
/ 18 июня 2010

Я пытаюсь извлечь некоторую информацию из API Ebay.У меня есть эта ссылка http://open.api.ebay.com/shopping?callname=GetMultipleItems&responseencoding=XML&appid=Morcovar-c74b-47c0-954f-463afb69a4b3&siteid=0&version=525&IncludeSelector=ItemSpecifics&ItemID=220617293997,250645537939,230485306218, и я использую SimpleXML.До сих пор мне удалось извлечь всю необходимую информацию, кроме «PictureURL».Проблема в том, что, когда я печатаю на simpleXMl, кажется, что изображения находятся в массиве

     [GalleryURL] => http://thumbs4.ebaystatic.com/pict/1105372138158080_1.jpg
                    [PictureURL] => Array
                        (
                            [0] => http://i.ebayimg.com/09/!Bt+mKZQCWk~$(KGrHqYH-CYEvrwcUC47BL-,(K(pnw~~_1.JPG?set_id=8800005007
                            [1] => http://i.ebayimg.com/01/!Bt+mDTwB2k~$(KGrHqUH-DEEvirheBYUBL-,WtytJQ~~_1.JPG?set_id=8800005007
                            [2] => http://i.ebayimg.com/22/!Bt+mE8!EGk~$(KGrHqUH-CMEvsjKcE3JBL-,Wzr+sw~~_1.JPG?set_id=8800005007
                            [3] => http://i.ebayimg.com/17/!Bt+mFg!EGk~$(KGrHqIH-DoEvp43,)33BL-,W14vYQ~~_1.JPG?set_id=8800005007
                            [4] => http://i.ebayimg.com/01/!Bt+mQ0!!2k~$(KGrHqIH-EQEvqDDLQZVBL-,(j1YGg~~_1.JPG?set_id=8800005007
                            [5] => http://i.ebayimg.com/01/!Bt+mSq!EGk~$(KGrHqQH-C4Evs(Rz(JWBL-,(rdtsw~~_1.JPG?set_id=8800005007
                            [6] => http://i.ebayimg.com/03/!Bt+mUBw!Wk~$(KGrHqEH-DEEvnQtM9VkBL-,(w1+lQ~~_1.JPG?set_id=8800005007
                            [7] => http://i.ebayimg.com/15/!Bt+mHKQEGk~$(KGrHqQH-E!Evlr98iwBBL-,W87Nug~~_1.JPG?set_id=8800005007
                            [8] => http://i.ebayimg.com/13/!Bt+mI3!Bmk~$(KGrHqMH-DkEvq1,F2ooBL-,(EQ7Vg~~_1.JPG?set_id=8800005007
                            [9] => http://i.ebayimg.com/05/!Bt+mL2gEWk~$(KGrHqIH-EYEvov7vQY4BL-,(PzCKQ~~_1.JPG?set_id=8800005007
                            [10] => http://i.ebayimg.com/24/!Bt+mNlwEWk~$(KGrHqIH-CYEvqPjh6RQBL-,(Wh+S!~~_1.JPG?set_id=8800005007
                            [11] => http://i.ebayimg.com/19/!Bt+mPE!!2k~$(KGrHqQH-CYEvr5z9)NVBL-,(c3bzw~~_1.JPG?set_id=8800005007
                        )

Но если я пытаюсь получить их из массива, я не получаю результата.Вот код, который у меня в настоящее время есть

   $items = "220617293997,250645537939,230485306218,110537213815,180519294810";
   $number_of_items  =  count(explode(",", $items));
   $xml = $baseClass->getContent("http://open.api.ebay.com/shopping?callname=GetMultipleItems&responseencoding=XML&appid=Morcovar-c74b-47c0-954f-463afb69a4b3&siteid=0&version=525&IncludeSelector=ItemSpecifics,description&ItemID=$items");
   writeDoc($xml, "api.xml");

   $getvalues = simplexml_load_file('api.xml');
 $picture_url = $getvalue->Item[$number]->PictureURL[2];
echo "picture url is $picture_url";

Используя приведенный выше код, я ожидал извлечь второй URL-адрес изображения из массива.заранее благодарю за любую помощь!

1 Ответ

0 голосов
/ 18 июня 2010

Боюсь, вы не можете это проверить, но вы пробовали var_dump ($ picture_url), чтобы увидеть, что такое $ picture_url?Может быть, его нужно привести в строку?

echo "picture url is" .  (string)$picture_url;
...