有人可以帮助我使用这个阵列吗?我想创建一个最多5列,最多15行的表.如果只有4行,例如,则只有4行应该显示,而不是15.如果仅存在3个具有数据,则剩下的2应与被填充的细胞$nbsp;.
这是我的示例数组:
Array
(
[0] => Array
(
[name] => test1
[item_id] => 1
)
[1] => Array
(
[name] => test2
[item_id] => 2
)
[2] => Array
(
[name] => test3
[item_id] => 3
)
[3] => Array
(
[name] => test4
[item_id] => 4
)
[4] => Array
(
[name] => test5
[item_id] => 5
)
[5] => Array
(
[name] => test6
[item_id] => 6
)
)
Run Code Online (Sandbox Code Playgroud)
如果添加了新行,我的数据会重复.这是我目前的问题.
$row = count( $array ) / 5;
$col = 5;
echo'<table border="1" width="700">';
for( $i = 0; $i < $row; $i++ )
{
echo'<tr>';
for( $j = 0; $j < $col; $j++ ) {
if( ! empty( $array[$j] ) ) {
echo '<td>'.$array[$j]['item_id'].'</td>';
}
}
echo'</tr>';
}
echo'</table>';
Run Code Online (Sandbox Code Playgroud)
cbr*_*ino 11
我们打电话给你的阵$rows,好吗?
echo "<table>";
foreach ($rows as $row) {
echo "<tr>";
foreach ($row as $column) {
echo "<td>$column</td>";
}
echo "</tr>";
}
echo "</table>";
Run Code Online (Sandbox Code Playgroud)
使用foreach更加惯用于在PHP中循环槽数组,它大大提高了代码的可读性.另外,您需要的唯一变量是包含数组本身的变量.
查看:
基本上是这样的简单逻辑:
echo "<table border=\"5\" cellpadding=\"10\">";
for ($i=0; $i < count($input); $i++)
{
echo "<tr>";
for ($c=0; $c<$cols; $c++)
{
echo "<td>$input[$i]</td>";
}
echo "</tr>";
}
echo "</table>";
Run Code Online (Sandbox Code Playgroud)