使用PHP在网页上显示循环数据

时间:2011-07-27 17:52:09

标签: php html loops include

lib.php:

<?php

function get_time() {
    loop = true;
    while (loop) {
        echo date("F j, Y, g:i a");
    }
}

?>

index.php包含:

<?php
    include("lib.php");
?>

这是一个更进一步的地方:

<?php
    get_time();
?>

但是,我什么也没看到。

所以我在这看到两个潜在的问题。我需要在声明函数的同时声明include()。或者PHP无法在不刷新的情况下在网页上显示连续数据(例如,这个while循环的情况)。

如果是前者,有没有办法在我的整个页面全局声明include()?如果是后者,我怎样才能让它在我的页面上显示连续循环的内容?我必须使用其他语言吗?感谢

3 个答案:

答案 0 :(得分:4)

这段代码将无限循环:

function get_time() {
    loop = true;
    while (loop) {
        echo date("F j, Y, g:i a");
    }
}

get_time();

所以你没有看到任何东西的事实可能是因为这个。

此外,您是对的 - 要查看此类不断更新的数据,您需要刷新页面,或通过AJAX调用更新内容。

答案 1 :(得分:2)

大多数情况下,PHP无法多次向您的浏览器发送数据,因为(不断):

  • 除了Firefox,没有浏览器能够显示不完整的数据。
  • 您的网络服务器可能会缓冲您的FastCGI / CGI / PHP模块输出的数据。
  • 您在ob_implicit_flush(1) - 函数的开头不使用get_time(),在flush();之后也没有使用echo(因此您可以尝试添加此行在while - 身体的最后。

答案 2 :(得分:2)

如果这是您正在使用的代码,请确保您的变量有美元符号。

$loop = true;
while ($loop) {
...
}