如何改变php回应的东西

时间:2013-04-13 06:04:33

标签: php shell

我正在编写一个PHP脚本,它将在myfile.php中使用shell命令运行 我想显示一个进度条,它会随时间变化:

[------]

[*-----]

[****--]

我不知道这是否是做这种事情的最佳做法,但我想用简单的echo来做,并且shell中进度条的位置不变。

完成后,我想删除整个装载的东西。

一般来说,我如何更改已经echo'编辑的内容?

2 个答案:

答案 0 :(得分:1)

您需要使用的是ANSI Escape序列。

StackOverflow上的这个问题和答案涵盖了它,你应该能够根据自己的需要进行调整,看看:Update Command-line Output, i.e. for Progress

答案 1 :(得分:0)

chr(8)是退格符。通过一点点数学运算,您可以打印足够数量的光标,将光标移回条形图的开头,然后在之前打印的位置打印新数据。

请勿在栏的末尾打印换行符。

问题:如果你在输出上做了任何类型的文本捕获,它会将这些文本捕获到捕获的文本中,但它在控制台窗口中看起来很好