10

我一直想知道是否可以在 PHP 中执行以下操作:

for($x = 1; $x <= 50; $x++)
    echo $x;

这将输出:

1234 etc...

显然它不会是这段代码,因为它几乎是瞬时的,你甚至看不到增量的发生。现在我的问题是:是否有可能echo,删除它,重复?简单地说,输出应该从头到尾在同一行。我不知道如何解释或展示,但这里有一个例子(有点):

1 (backspace) 2 (backspace) etc...

我希望你能理解它,我不知道如何解释它.-。

感谢您的帮助!

编辑:顺便说一句,这是用于控制台的,对不起,我忘了包括在内。这不适合网络!

4

3 回答 3

28

如果您在 CLI 中运行代码:

echo $x."\r";
于 2012-08-02T16:03:56.240 回答
2

使用通常的 php 输出转到 HTTP 响应设置,不,这是不可能的。用户屏幕上显示的所有内容都通过网络消失了,您无法再控制它。

但是,如果您在 CLI 环境中运行,则可以使用完整的基于字符的窗口绘图库,例如ncurses,您可以使用它们在终端中移动像素(在本例中为字符)。

于 2012-08-02T15:54:28.117 回答
2

你可以很容易地使用 Javascript 来做到这一点,但是由于 PHP 生成页面然后将其发送出去,所以你不能直接使用 PHP,至少如果你的最终意图是允许用户看到他们所做的更改发生。

编辑:这是假设您在网络上,所以不确定,因为您更新了与控制台相关的问题。

于 2012-08-02T15:54:20.877 回答