Повторные данные PHP SimpleXML

Использование SimpleXML для извлечения данных из основного XML-файла. XML выглядит примерно так:

<shop> <section> <title></title> <products> <item> ... </item> </products> </section> </shop> 

Я могу загружать и обходить узлы, но когда я заполняю HTML с каждым элементом раздела, он продолжает повторять первые элементы раздела. Я запутался, потому что имя каждого раздела выводится правильно, но с использованием первого набора элементов.

 foreach($xml->section as $section){ $i=0; echo '<div class="section"><div class="sectionTop"><h3>'.$section->title.'</h3><a class="expand">+/-</a></div>'; foreach($xml->section->products as $products){ foreach($products->item as $item){ if($i==3){echo '</div><div class="extra">';}?> <div class="item"> <img src="<?=$item->image?>" /> <div class="prodName"><?=$item->name?></div> <div class="price">&pound;<?=$item->price?></div> <a href="<?=$item->url?>" class="shopNow">SHOP</a> </div> <? $i++; unset($item); } unset($products); } с foreach($xml->section as $section){ $i=0; echo '<div class="section"><div class="sectionTop"><h3>'.$section->title.'</h3><a class="expand">+/-</a></div>'; foreach($xml->section->products as $products){ foreach($products->item as $item){ if($i==3){echo '</div><div class="extra">';}?> <div class="item"> <img src="<?=$item->image?>" /> <div class="prodName"><?=$item->name?></div> <div class="price">&pound;<?=$item->price?></div> <a href="<?=$item->url?>" class="shopNow">SHOP</a> </div> <? $i++; unset($item); } unset($products); } этот foreach($xml->section as $section){ $i=0; echo '<div class="section"><div class="sectionTop"><h3>'.$section->title.'</h3><a class="expand">+/-</a></div>'; foreach($xml->section->products as $products){ foreach($products->item as $item){ if($i==3){echo '</div><div class="extra">';}?> <div class="item"> <img src="<?=$item->image?>" /> <div class="prodName"><?=$item->name?></div> <div class="price">&pound;<?=$item->price?></div> <a href="<?=$item->url?>" class="shopNow">SHOP</a> </div> <? $i++; unset($item); } unset($products); } не foreach($xml->section as $section){ $i=0; echo '<div class="section"><div class="sectionTop"><h3>'.$section->title.'</h3><a class="expand">+/-</a></div>'; foreach($xml->section->products as $products){ foreach($products->item as $item){ if($i==3){echo '</div><div class="extra">';}?> <div class="item"> <img src="<?=$item->image?>" /> <div class="prodName"><?=$item->name?></div> <div class="price">&pound;<?=$item->price?></div> <a href="<?=$item->url?>" class="shopNow">SHOP</a> </div> <? $i++; unset($item); } unset($products); } 

Может ли кто-нибудь помочь? Это, где я до сих пор, не работает, не работает 🙁 <shop> is $xml

Вы должны использовать переменную $ section, чтобы считать ее продуктами.

Итак, foreach ($ xml-> section-> products как $ products) {-> foreach ($ section-> продукты как $ products) {