我有一段代码,它使用SimpleXMLElement读取XML目录文件,并将该目录中包含的产品打印到网站上的css样式表中。
代码输出彼此相邻的每个产品。 但是我只想连续展示4种产品。
因此我需要插入一些
<tr> </tr>
跟随阵列中每4(或x)个产品的标签。
我该怎么做?我的代码如下:
echo '<table class="products">';
foreach (getProdutcsFromCatalog($grpName) as $product) {
$output = '
<td>
<h2>' .$product->title .'</h2>
<div class="img">
<img src="' .$product->img . '" height="150" width="100" class =""/>
</div>
<div>
'.$product->description.'
</div>
</div>
<div class="price">
<b>
'.$product->price . ' DKK' . '
</b>
</div>
<div class="addToCart">
<a href="#">Læg i kurv</a>
</div>
</td>
';
echo $output;
}
echo '</table>';
答案 0 :(得分:1)
在开始$i = 0;
循环之前初始化foreach
。然后改变你的
echo $output;
}
为:
if( $i % 4 == 0 ) echo "<tr>";
echo $output;
if( $i % 4 == 3 ) echo "</tr>";
$i++;
}
答案 1 :(得分:0)
如果你每行只需要4个项目,我建议你首先遍历XML结构并将所有项目保存在一个数组中,然后保存到array_chunk($items, 4)
数组,然后循环遍历它并生成表