我想使用带有条件的foreach循环在连续3列的表中显示Array数据。
编码
$value[]='a';
$value[]='b';
$value[]='c';
$value[]='d';
$value[]='e';
echo '<table width=30% border=1>';
echo '<tr>';
$counter=1;
foreach($value as $key){
if($counter>=3){ // if there is more than 3 elements, go to next Row
if($counter%3==0){ // when the Array hit 3th,6th,9th,12th.... element
echo '</tr><tr><td>';
echo $key;
echo '</td>';
}else{
echo '<td>';
echo $key;
echo '</td>';
}
}else{
echo '<td>';
echo $key;
echo '</td>';
}
$counter++;
}
echo '</tr>';
echo '</table>';
我仔细检查了编码,但没有找到错误。...我的输出是图像的底部。但是,正确的图像应该位于图像的顶部。请看照片
有人知道我的编码有什么问题吗?
答案 0 :(得分:1)
更改模态条件
if($counter % 3 == 1)
您将得到想要的东西
答案 1 :(得分:0)
您拥有“ if counter> = 3”,因此您要在第三个元素上达到该条件,而不是在第三个元素之后。
答案 2 :(得分:0)
将计数器的初始化更改为$counter=0;