PHP5中的嵌套foreach循环
这就是交易: 我有一个数组,其中包含智能手机制造商的名称,还有一个XML文件,其中包含每个特定手机的规格 我想做的是根据制造商对手机进行分组。我使用嵌套的FOREACH循环来实现这一点。这是我的代码:PHP5中的嵌套foreach循环,php,xml-parsing,foreach,simplexml,php-5.2,Php,Xml Parsing,Foreach,Simplexml,Php 5.2,这就是交易: 我有一个数组,其中包含智能手机制造商的名称,还有一个XML文件,其中包含每个特定手机的规格 我想做的是根据制造商对手机进行分组。我使用嵌套的FOREACH循环来实现这一点。这是我的代码: foreach ($makes as $manufacturer){ echo '<div>'.'<h2>'.$manufacturer.'</h2>'.'<hr>'; foreach ($xml as $it
foreach ($makes as $manufacturer){
echo '<div>'.'<h2>'.$manufacturer.'</h2>'.'<hr>';
foreach ($xml as $item){
if($item->make == $manufacturer){
$src = $item->thumb;
echo '<div>'."<img src='$src' width='100'/>".'<h1>'.
$item->make.' '.$item->model.'</h1>'.'</div>';
}
}
echo '</div>';
}
foreach($makeas$manufacturer){
回显“.”制造商“,”
”;
foreach($xml作为$item){
如果($item->make==$manufacturer){
$src=$item->thumb;
回显“”。
$item->make'.$item->model'.';
}
}
回声';
}
这种方法的问题是,出于某种原因,我的页面只显示每个制造商的第一部手机,而不是浏览每个型号
我做错了什么
以下是XML示例:
<?xml version="1.0" encoding="utf-8"?>
<items>
<item>
<make></make>
<model></model>
<thumb></thumb>
</item>
</items>
此外,如果我删除了外部循环,代码将完美地工作,并显示XML中的每一部手机您有一个输入错误:
echo '<div>'."<img src='$src' width='100'/>".'<h1>'.
$item->make.' '.$item->model.'</h1>'.
echo'.''。
$item->make.'.$item->model.'。
应该是
echo '<div>'."<img src='$src' width='100'/>".'<h1>'.
$item->make.' '.$item->model.'</h1>';
echo'.''。
$item->make.'.$item->model.';
请注意echo末尾的“;”。如果数据位于数据库中,则使用XML示例会容易得多。内部循环的主题
$xml
中有什么?它不是打字错误。还有一个结束标记。它就在下一行,我忘了复制它