我正在创建一个程序,我从数据库中获取数据并将其显示在表中。我不知道从数据库中获取多少记录,但我必须在一行中打印3条记录,在另一条线中打印3条记录。我在打印同一行的所有记录时创建了以下程序。我希望它将此限制为3并在3个记录更改行并在另一行中打印下一个3记录之后。
<body>
<table border="2px">
<tr>
<?php
for($i=0; $i<=5; $i++)
{
echo "<td> $i </td>";
$i=$i++;
}
?>
</tr>
</table>
</body>
答案 0 :(得分:0)
尝试:
<?php
echo "<tr>";
for($i=0; $i<=5; $i++) {
echo "<td>".$i."<td>";
if( $i % 3 == 0 )
echo "</tr><tr>";
}
echo "</tr>";
?>
答案 1 :(得分:0)
只是另一个示例,尝试使用这样的方法将表格精确地分解为3
列并记录任何记录。在这种情况下,$i
是:<= 5
echo "<table border='2px'>";
for ($i = 0; $i <= 5; $i++) {
if($i%3 == 0) echo "<tr>";
echo "<td> $i </td>";
if($i%3 == 2) echo "</tr>";
}
if($i%3 != 0) echo "</tr>";
echo "</table>";
你也不需要++
$ i里面的!!删除$i=$i++;
答案 2 :(得分:0)
我建议您使用以下内容:
for($i=0; $i<=7; $i++){
echo ($i%3 == 0) ? '<tr>' : ''; //Start a row
echo "<td> $i </td>";
echo ($i%3 == 2) ? '</tr>' : ''; //End a row after the third item
}
echo ($i%3 == 1) ? '<td></td><td></td></tr>' : ''; //End row adding two cells if only one is present after loop
echo ($i%3 == 2) ? '<td></td></tr>' : ''; //End row adding one cell if only one is present after loop
$i=$i++;
代码中不需要,因为它是在for
循环初始化时定义的
完整代码
<table border="2px">
<?php
for($i=0; $i<=7; $i++){
echo ($i%3 == 0) ? '<tr>' : '';
echo "<td> $i </td>";
echo ($i%3 == 2) ? '</tr>' : '';
}
echo ($i%3 == 1) ? '<td></td><td></td></tr>' : '';
echo ($i%3 == 2) ? '<td></td></tr>' : '';
?>
</table>
答案 3 :(得分:-1)
<table border="2px">
<?php
echo "<tr>";
for($i=0; $i<=5; $i++)
{
echo"
<td> $i </td>";
if($i % 3 == 0)
echo "</tr>";
$i=$i++;
}
?>
</table>