这个for循环有问题

时间:2014-04-22 13:16:01

标签: php html loops

我有这个循环不能正常工作,如果你能告诉我问题在哪里,我将非常感谢..以下是:

$num_rows = 3;
echo '<div id="slideshow"><div>';
for ($i = 0; $i < $num_rows; $i++) {
    echo'<div class="">text</div>';
    if (($i + 1) % 1 == 0)
        echo '</div><div>';
}
echo '</div></div>';

问题是这会再画一个空div。结果是:

<div><div class="">text</div></div>    
<div><div class="">text</div></div>    
<div><div class="">text</div></div>    
<div></div>    

这是为什么? 谢谢你的帮助!

2 个答案:

答案 0 :(得分:1)

代码中的问题如下:

$num_rows=3;    
echo '<div id="slideshow"><div>';
for($i=0;$i<$num_rows;$i++)
{
    echo'<div class="">text</div>';
    if(($i+1)%1==0) echo '</div><div>';    
}                                 ^this is the start of empty div
echo '</div></div>';    
              ^this is the end of empty div

删除后,您的代码应如下所示:

$num_rows=3;    
echo '<div id="slideshow"><div>';
for($i=0;$i<$num_rows;$i++)
{
    echo'<div class="">text</div>';
    if(($i+1)%1==0) echo '</div>';    
}    
echo '</div>';    

当你自己创造一个空div时。希望这会有所帮助。

答案 1 :(得分:0)

$num_rows = 3;
echo '<div id="slideshow"><div>';
for ($i = 0; $i < $num_rows; $i++) {
    echo'<div class="">text</div>';
    if (($i + 1) % 1 == 0)
        echo '</div>';
}
echo '</div>;