我尝试按组循环显示数据,实际上我有多个元素的数组,需要在4,5组等中显示
我举了例子:
$array_values=array(
"2","3","5","2","3","5","2","3","5","2","3","5","2","3","5","2","3",
"5","2","3","5","2","3","5","2","3","5","2","3","5"
);
$c=0;
foreah($array_values as $array_value) {
print $array_value
if($c%3) {
print "<br><br>";
}
$c++;
}
正如您在示例中所见,在这种情况下,我想要放“&lt; br&gt;” ,循环中的每个3个元素,在其他情况下可以是每个4个或更多元素,我尝试这个但是没有得到好的结果,在某些情况下在其他情况下表现良好所有不好
我不知道我怎么能这样做,谢谢你的帮助
答案 0 :(得分:0)
你需要检查$c%3
的剩余部分是否为0.但是如果你想在另一种情况下将它作为另一个长度,那么你必须加入它。但是这应该让你开始。< / p>
$array_values=array("2","3","5","2","3","5","2","3","5","2","3","5","2","3","5","2","3","5","2","3","5","2","3","5","2","3","5","2","3","5");
$c=1;
foreach($array_values as $array_value)
{
print $array_value;
if($c%3 === 0)
{
print "<br><br>";
}
$c++;
}
运行它给我这个输出:
235
235
235
235
235
235
235
235
235
235
答案 1 :(得分:0)
与所有解决方案一样,实现目标的方法不止一种。
您可以使用array_slice
一次从数组中获取值3。
for ($c = 0; $c < count($array_values); $c+=3) {
print(implode(array_slice($array_values, $c, 3)));
print "<br><br>";
}
您还可以使用array_chunk
将数组拆分为3个区段:
foreach (array_chunk($array_values, 3) as $row) {
print(implode($row));
print "<br><br>";
}