Я выбираю самые продаваемые товары для определенного browseNodeId. Ответ xml имеет 10 элементов, но когда я печатаю / отображаю информацию, он показывает только один. Пожалуйста помоги.
Мой массив запросов:
$params = array(
"Service" => "AWSECommerceService",
"Operation" => "BrowseNodeLookup",
"AWSAccessKeyId" => "",
"AssociateTag" => "",
"BrowseNodeId" => "6386372011",
"ResponseGroup" => "TopSellers");
(Я удалил свои идентификаторы специально)
и вот как я анализирую ответ XML:
$response = simplexml_load_file($request_url);
foreach($response->BrowseNodes->BrowseNode as $item)
{
$topItem = $item->TopItemSet->TopItem->Title;
$itemURL = $item->TopItemSet->TopItem->DetailPageURL;
$itemID = $item->TopItemSet->TopItem->ASIN;$results .= "<tr><td><a href=\"$itemURL\">$topItem</a></td><td>$itemID</td></tr>";
}
позже я просто печатаю ‘$ results’ с помощью команды echo. Этот подход работает со всеми другими запросами / ответами, т.е. я получаю & отображение 10 пунктов без каких-либо проблем. Я не могу найти ошибку. Пожалуйста, помогите, я хочу отобразить 10 пунктов, а не только один.
Преобразовать объект XML в массив с помощью этого
$response = simplexml_load_file($request_url);
$json_string = json_encode($response);
$result = json_decode($json_string, TRUE);
А затем получить доступ к элементам, используя массив [ «ключ»] синтаксис.
Других решений пока нет …