使用while循环增加会导致0

时间:2013-03-25 17:59:11

标签: php increment

为什么$ i每次都不会使用以下代码计算一次?

<?php if(get_field('staff_member')) { ?>
    <div class="row-fluid">
        <?php while(has_sub_field('staff_member')) 
        {
        for($i = 0; $i <= 1;  $i++)
        echo '<div class="span3 mobile_width' . $i . '"> 

    .....etc...
}
echo '</div>';
}
?>

输出有4个项目,它们都返回类mobile_width0。

它还输出每个项目的2个。

4 个答案:

答案 0 :(得分:1)

因为您每次都将其重置为0。你不需要for循环,这就是你有双倍输出的原因。你可以这样做:

<?php $i = 0; 
    while(has_sub_field('staff_member')) {
        echo '<div class="span3 mobile_width' . $i . '">';
        $i++;
    }

答案 1 :(得分:0)

尝试

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

<代替<=

答案 2 :(得分:0)

因为您在for循环中将“i”重置为0.

答案 3 :(得分:0)

每次你的cicle迭代时,$i都会重置为0,在这一行中for($i = 0; $i <= 1; $i++)你说$i只能取0和1值