Есть две xml, которую я получаю с сайта, первая имеет вот такую структуру:
<retval></retval>
<id_group></id_group>
<name_group></name_group>
<cnt_goods></cnt_goods>
<order></order>
<rows>
<row id=>
<id_goods></id_goods>
<name_goods></name_goods>
<price></price>
<currency></currency>
</row>
</rows>
Вторая, такую:
<retval></retval>
<id_goods></id_goods>
<name_goods></name_goods>
<nal></nal>
<preorder></preorder>
<price_goods>
<wmz></wmz>
<wmr></wmr>
<wme></wme>
<wmu></wmu>
<pcr></pcr>
</price_goods>
<info>
<img></img>
<genre></genre>
<izdatel></izdatel>
<reliz></reliz>
<language></language>
<system></system>
<youtube></youtube>
<platform></platform>
<type></type>
<activation></activation>
<description></description>
<add_desc></add_desc>
</info>
НО, значения второй формируются от полученного значения первой(параметр - "id_goods")
Как в одном цикле вывести значения двух xml?
Делал так:
1) Получаю xml:
<?php
class STEAMBUY {
public function GetGoods($id_goods) {
$id_goods = (int) trim($id_goods);
$url = 'http://steambuy.com/xml/?request=get_goods&id_good='.$id_goods;
$data = simplexml_load_file($url);
return $data;
}
public function GetList($id_group, $curr = 'RUR', $order = 'name') {
$id_group = (int) trim($id_group);
$url = 'http://steambuy.com/xml/?request=get_list&id_group='.$id_group.'&curr='.$curr.'&order='.$order;
$data = simplexml_load_file($url);
return $data;
}
}
?>
2) Обрабатываю:
$xml = new STEAMBUY();
$id_group = empty($_GET['idn']) ? $id_group : (int) trim($_GET['idn']);
$url = 'index.php?idn='.$id_group;
$Orders = $xml->GetList($id_group, $curr);
3) Вывожу:
if ($Orders->retval == 1)
echo 'Ошибка';
else {
foreach ($Orders->rows->row AS $Order) {
$infos = $xml->GetGoods($Order->id_goods); //Засовываю значение id_goods во вторую xml
//Вывожу значение второй
echo'<img src="'.$infos->info->img.'" width="178px" height="75px">
<p>'.$Order->name_goods.'</p>'; //Вывожу значение первой
}
}
Но выводится это всё очень медленно. Если из цикла убрать вот это: $infos = $xml->GetGoods($Order->id_goods); ", то всё работает быстро(значения первой xml выводятся быстро). Как быстро вывести значения второй xml?