简体   繁体   English

声明超时

[英]While statement timing out

I'm trying to implement pagination for a search result. 我正在尝试为搜索结果实现分页。 The following code works perfectly: 以下代码可以完美运行:

        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";

However, if I add in the following, I get a timeout: 但是,如果添加以下内容,则会发生超时:

        $page = 1;

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

No doubt I'm missing something obvious. 毫无疑问,我缺少明显的东西。

Your error is here: 您的错误在这里:

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

Your while loop loops trough a empty statement so no statement is going to increment $page . 你的while循环通过一个空语句循环,所以没有语句将增加$page So your curly brackets are just a normal code block, in order to get your while loop working just remove the semicolon like this: 因此,大括号只是一个普通的代码块,为了使while循环正常工作,请删除分号,如下所示:

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM