php,SimpleXML,从数组中提取信息

时间:2010-06-18 13:26:09

标签: php simplexml

我正在尝试从ebay api中提取一些信息。我有这个链接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";

使用上面的代码我希望从数组中提取第二个图片网址。 提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

无法测试这个,我很害怕,但是你试过var_dump($ picture_url)看看$ picture_url是什么?也许它需要被转换为字符串?

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