用while循环让浏览器崩溃,PHP


Crashing my browser with while loop, PHP

我正在使用PHP来帮助创建一个网页表,似乎无法发现这个while循环在哪里导致浏览器崩溃。

  <?php
    $counter1 = 1;

    $weekDay = date('l');
    echo "Today is $weekDay " . date("Y/m/d") . "<br/>";
    echo "<h1>Table Construction</h1>";
    echo "<table><tr>";
    $dateNow = date("Y/m/d");
    $dayStore = array();
    while ($counter1 < 8) {
        $stringCheck = "+" . $counter1 . " day";
        $dateMod = strtotime($stringCheck, strtotime($dateNow));
        $weekDay = date ('D',$dateMod);
        echo "<td id='"bolder'">" . date ('l',$dateMod) . " " . date("Y/m/d", $dateMod). "</td>";
        $dayStore[$counter1]=$weekDay;
        $counter1++;
    }
    echo "</tr>";//"<tr>";
    $counter1=1;
    while ($counter1<8){
        echo "<td><form name='"timeslots'">";
        $dayVar = $dayStore[$counter1];
        echo $dayVar. " ";
        $counterHours = 0;
        if ($dayVar == "Mon"||$dayVar == "Tue"||$dayVar ==  "Wed"||$dayVar ==  "Thu"||$dayVar == "Fri") {
            $startTime = 9;
            $counterHours = 0;
            while ($counterHours<3) {
                $timeString = $startTime . ":00 am";
                echo "<input type='"radio'" name='"$dayStore[$counter1]'" value='"$startTime'">$timeString</input><br/>";
                $startTime = $startTime+1;
                $counterHours++;
            }
            while (startTime<12 && $counterHours>=3) {
                $timeString = ($startTime-12) . ":00 pm";
                echo "<input type='"radio'" name='"$dayStore[$counter1]'" value='"$startTime'">$timeString</input>";
                $startTime = $startTime+1;
                $counterHours++;
            }
        }
        else if ($dayVar == "Sat") {
            $startTime = 9;
            $counterHours = 0;
            while ($counterHours<3) {
                $timeString = $startTime . ":00 am";
                echo "<input type='"radio'" name='"$dayStore[$counter1]'" value='"$startTime'">$timeString</input>";
                $startTime = $startTime+1;
                $counterHours++;
            }
            while ($counterHours<12 && $counterHours>=3) {
                $timeString = ($startTime-12) . ":00 pm";
                echo "<input type='"radio'" name='"$dayStore[$counter1]'" value='"$startTime'">$timeString</input>";
                $startTime = $startTime+1;
                $counterHours++;
            }
        }   
        else if ($dayVar == "Sun") {
            $startTime = 11;
            $counterHours = 0;
            while ($counterHours<3) {
                $timeString = $startTime . ":00 am";
                echo "<input type='"radio'" name='"$dayStore[$counter1]'" value='"$startTime'">$timeString</input>";
                $startTime = $startTime+1;
                $counterHours++;
            }
            while ($counterHours<12 && $counterHours>=3) {
                $timeString = ($startTime-12) . ":00 pm";
                echo "<input type='"radio'" name='"$dayStore[$counter1]'" value='"$startTime'">$timeString</input>";
                $startTime = $startTime+1;
                $counterHours++;
            }
        }
        else {
            echo "displaying a proper message";
        }
        echo "</form></td>";
        $counter1++;
    }
    echo "</tr></table>";
    ?>

当我把这个上传到我的主页到我学校的服务器上并运行它时,没有加载任何东西,浏览器崩溃了。对于我选择的变量范围,我认为不应该这样做

打字错误:

    while (startTime<12 && $counterHours>=3) {
           ^^^^^^^^^ missing $

未定义常量,因此被求值为0,使得表达式

    while (0 < 12 && $counterHours>=3) {
    while (true && true) {
    while (true) {

因此是一个无限循环。

如果您在运行时启用了调试选项(例如display_errorserror_reporting),您将被告知未定义的常量。在开发/调试系统中,这些设置永远不能关闭。