Php 如何在命令行中制作计时器动画?
这有点傻,但有些事我以前一直想做,却一直想不出来。我有一个从命令行运行的PHP脚本。我想要一个小计时器动画,让用户知道脚本仍在运行。以下是我所拥有的:Php 如何在命令行中制作计时器动画?,php,animation,command-line,timer,Php,Animation,Command Line,Timer,这有点傻,但有些事我以前一直想做,却一直想不出来。我有一个从命令行运行的PHP脚本。我想要一个小计时器动画,让用户知道脚本仍在运行。以下是我所拥有的: while (1 == 1) { echo '—'; usleep(100000); echo '\'; usleep(100000); echo '|'; usleep(100000); echo '/'; } 但是如何让每个echo替换前面的字符呢?试试php ncurses扩展: 尝试php nc
while (1 == 1) {
echo '—';
usleep(100000);
echo '\';
usleep(100000);
echo '|';
usleep(100000);
echo '/';
}
但是如何让每个echo替换前面的字符呢?试试php ncurses扩展:
尝试php ncurses扩展:
您需要在每个字符前打印一个退格,例如:-
echo '-';
usleep(100000);
echo "\b/";
请注意,这里必须使用双引号,否则转义序列将不起作用
我相信你可以解决剩下的问题:
如果\b不起作用,请尝试:-
echo chr(8) . '/';
您需要在每个字符前打印一个退格,例如:-
echo '-';
usleep(100000);
echo "\b/";
请注意,这里必须使用双引号,否则转义序列将不起作用
我相信你可以解决剩下的问题:
如果\b不起作用,请尝试:-
echo chr(8) . '/';
你可以用
echo "yourCharacter1\r";
usleep(100000);
echo "yourCharacter1\r";
或
\r将光标发送回同一行上的位置0
你也可以在网上找到
system("clear"); // before you echo new characters
或
你可以用
echo "yourCharacter1\r";
usleep(100000);
echo "yourCharacter1\r";
或
\r将光标发送回同一行上的位置0
你也可以在网上找到
system("clear"); // before you echo new characters
或
这似乎是最简单的解决方案-我在提出问题之前\b尝试过,但没有成功。cur8成功了!这似乎是最简单的解决方案-我在提出问题之前\b尝试过,但没有成功。cur8成功了!哇-这是一个很酷的扩展。我肯定会调查这件事,不过可能有点过火。哇,这是一个很酷的扩展。我肯定会调查这件事,不过可能有点过火了。