这是我遇到的一个练习题。到目前为止,我要创建的是一个使用以下代码的表。我需要帮助来修复它,并解释我的错误是什么。
我试图做的非常简单:使用嵌套在 html 代码中的 php 在表中生成从 1 到 100 的数字
每 10 个数字应对齐,然后在 10 后中断
| 1 | 2 | . . . | 10 |
|11 | 12| .... | 20 |
|21 | 22| .... | 30 |
.
.
.
|91| 92 | ... |100|
<table border="1">
<?php
for ($x=1; $x <= 100; $x++){
if($x%11 ==0) {
echo "<tr><td>" . "<br>" . "</tr></td>";
}
echo "<tc><td>" . $x . "</td></tc>" ;
}
?>
</table>
还对循环使用 for
语句,其中嵌套if
语句用于中断行
有人可以指出我在这段代码中的错误吗?
好吧,正确的代码应该是这样的:
<table border="1">
<?php
for ($x=1; $x <= 100; $x++){
if($x%10 ==1) {
echo "<tr>";
}
echo "<td>" . $x . "</td>" ;
}
?>
</table>
谢谢大家的帮助
我们需要首先了解要求。
要求:
-
需要水平增量计数器。
-
每行应包含整整 10 个数字,从 1 到 10、11 到 20 等。
-
因此,如果我们将输出视为 HTML 表,则
<tr>
递增11
<td>
递增1
. -
因此,我们需要两个循环:一次递增
10
:外循环,另一个递增1
:内循环。 -
所以,写外循环,在里面,添加内循环,都有步骤:
1
-
因此,外部循环将增加计数器,在其内部循环也将运行。
-
对于每个外部循环,内部循环将运行 10 次。
-
因此,我们得到精确的行:
1-10
、11-20
试试这个:
<table>
<?php
$k=0;
for ($i=0; $i<10; $i++) {
?>
<tr>
<?php
for ($j=0; $j<10; $j++) {
++$k;
?>
<td><?php print $k;?></td>
<?php
}
?>
</tr>
<?php
}
?>
</table>
试试这个:
<?php
echo "<table border ='"1'" style='border-collapse: collapse'>";
for ($row=1; $row <= 10; $row++) {
echo "<tr> 'n";
for ($col=1; $col <= 10; $col++) {
$p = $col * $row;
echo "<td>$p</td> 'n";
}
echo "</tr>";
}
echo "</table>";
?>
<table>
<?php
for ($x=1; $x <= 100; $x++)
{
if($x%10 ==1)
**{
echo "<tr><td>" . "<br>" . "</tr></td>";**
}
echo "<tc><td>" . $x . "</td></tc>" ;
}
?>
</table>