Ebay api GetSellerList, анализ ответа XML

Я использую ebay trading api, чтобы получить акции продавцов, которые в настоящее время перечислены. Я использую вызов GetSellerList. У меня возникли проблемы с разбором xml, который я бы тогда вставлял в магазин веб-сайта.

Это запрос xml.

<GetSellerListRequest xmlns='urn:ebay:apis:eBLBaseComponents'> <UserID>".$user_id."</UserID> <DetailLevel>ReturnAll</DetailLevel> <ErrorLanguage>RFC 3066</ErrorLanguage> <WarningLevel>Low</WarningLevel> <Version>".$compat_level."</Version> <RequesterCredentials> <eBayAuthToken>".$auth_token."</eBayAuthToken> </RequesterCredentials> <StartTimeFrom>2012-06-12T23:35:27.000Z</StartTimeFrom> <StartTimeTo>2012-08-30T23:35:27.000Z</StartTimeTo> <Pagination> <EntriesPerPage>200</EntriesPerPage> </Pagination> <OutputSelector>ItemArray.Item.Title</OutputSelector> <OutputSelector>ItemArray.Item.Description</OutputSelector> <OutputSelector>ItemArray.Item.BuyItNowPrice</OutputSelector> <OutputSelector>ItemArray.Item.Quantity</OutputSelector> </GetSellerListRequest> 

Я не лучший с php, я все еще учась, поэтому просмотрел w3schools и php docs и ничего не нашел. Я использую это (от ebay tuts), чтобы попытаться получить значения тегов xml с помощью getElementsByTagName.

 $dom = new DOMDocument(); $dom->loadXML($response); $titles = $dom->getElementsByTagName('Title')->length > 0 ? $dom->getElementsByTagName('Title')->item(0)->nodeValue : ''; 

Теперь я надеялся, что смогу создать массив с этим, а затем использовать foreach, чтобы вставить их в db, но когда я использую это, он получает только значение первого тега 'Title'

Я уверен, что есть способ создать массив со всеми значениями «Название» в нем. Вся помощь приветствуется.

Это было бы легче ответить, если бы вы отправили ответ XML (только соответствующую часть), а не запрос.

Код, который у вас есть, будет захватывать только первый элемент – в частности, эту часть:

 $dom->getElementsByTagName('Title')->item(0)->nodeValue 

Скорее всего, вам захочется пропустить все элементы Title и извлечь их nodeValue. Это отправная точка:

 $dom = new DOMDocument(); $dom->loadXML($response); $title_nodes = $dom->getElementsByTagName('Title'); $titles = array(); foreach ($title_nodes as $node) { $titles[] = $node->nodeValue; }