while语句超时

While statement timing out

我正在尝试为搜索结果实现分页。以下代码完美运行:

        echo "<p>" . $data['meta']['total'] . " properties found. (search " . $data['meta']['searchId'] . ")</p>\n";

        $pages = $data['meta']['total'] / $count;
        $pages = ceil($pages);

        echo "<p>" . $pages . "</p>\n";

但是,如果我添加以下内容,我会超时:

        $page = 1;

        echo "<p>";
        while ($page <= $pages); {
            echo $page++ . " ";
        }
        echo "</p>\n";

毫无疑问,我遗漏了一些明显的东西。

你的错误在这里:

while ($page <= $pages); {
                     //^ See this empty statement here!
    echo $page++ . " ";
}

您的 while 循环通过空语句循环,因此没有语句会递增 $page。所以你的花括号只是一个普通的代码块,为了让你的 while 循环工作,只需像这样删除分号:

while ($page <= $pages) {
    echo $page++ . " ";
}