无限循环 - 为什么?

时间:2012-05-02 00:47:33

标签: php loops switch-statement infinite

for($i=0; $i<5; $i++) {
    switch($i) {
        case 0:
            echo "<div class=\"darkgrey topdarkgrey\">";
            break;
        case 1:
        case 3:
            echo "<div class=\"lightgrey\">";
            break;
        case 2:
        case 4:
            echo "<div class=\"darkgrey\">";
            break;
        case 5:
            echo "<div class\"darkgrey bottomdarkgrey\">";
            break;
    }
    if($i=$idagInt) 
        echo "<div id=\"idag\">" . $dag[$i] . "<br>";
    else
        echo "<div class=\"dag\"><span class=\"veckoDag\">" . $dag[$i] . "</span><br>";

    echo "<span class=\"month\">" . $datumDay[$i] . " " . $month[$i] . "</span></div>";
    echo "<div class=\"mat\">" . strip_tags($mat[$i], "<p>") . "</div></div>";
}

这是我用来将内容打印到网站上的代码,经过一些故障排除后,我的结论是switch语句有问题,但我看不清楚了什么?

1 个答案:

答案 0 :(得分:7)

这是你的问题。您要为$i分配$idagInt而不是比较它。结果$i永远不会达到5。

if($i=$idagInt) 

将其更改为:

if($i==$idagInt)