Php 为什么这个程序会输出;“10”吗;?

Php 为什么这个程序会输出;“10”吗;?,php,Php,我是一个新手,用c和php测试了以下代码。请告诉我为什么这个代码输出“10” 对于($i=0;$i错误的代码; <?php for($i=0;$i<10;$i++) { print $i; } 应输出所有数字删除; for($i=0;$i<10;$i++); ^ 用于($i=0;$i因为for语句中有分号。这会比您预期的更早结束语句,并且print语句不再是循环的一部分。请参见for循环后面有一个分号。因此PHP认为循环没

我是一个新手,用c和php测试了以下代码。请告诉我为什么这个代码输出“10”


对于($i=0;$i错误的代码

<?php
 for($i=0;$i<10;$i++)
 {
  print $i;
 }

应输出所有数字

删除

for($i=0;$i<10;$i++);
                    ^

用于($i=0;$i因为
for
语句中有分号。这会比您预期的更早结束语句,并且
print
语句不再是循环的一部分。

请参见
for
循环后面有一个分号。因此PHP认为循环没有正文。因此
print$i
只执行一次 删除for($i=0;$i后的;(分号)删除此行中的分号,它将输出1,2,3..9:

for($i=0;$i<10;$i++);

for($i=0;$i是的,但他问为什么打印“10”。原因如下:

您的代码是:

<?php
for($i=0;$i<10;$i++);
{
print $i;
}
?>

它将打印
0123456789

for循环旁边的分号(;)表示循环内容为空,因此空内容的执行次数为for循环中的10倍(
)($i=0;$i您确定这是打印“10”吗?此代码应输出除10remove;之外的所有数字;用于operator@TimKatheteStadler请仔细检查for循环的末尾有一个分号。当for循环终止时,他正在打印值(此时为10)谢谢你的回答。我知道分号导致的终止,我只是想知道如果循环运行与否会有冲突。再次感谢你的帮助。
<?php
for($i=0;$i<10;$i++);
{
print $i;
}
?>
{
print $i;
}