我正在寫一個PHP腳本,它將與myfile.php
中的shell命令一起運行。
我想顯示一個進度條,類似的這種隨時間改變:如何更改一些PHP的echo'ed
[------]
[*-----]
[****--]
我不知道這是做這樣的事情最好的做法,但我想它使用一個簡單的echo
做,並且在外殼不變的進度條的位置。
之後的工作,我想刪除整個裝載的東西。
一般情況下,我該如何改變已有的echo
'ed?
我正在寫一個PHP腳本,它將與myfile.php
中的shell命令一起運行。
我想顯示一個進度條,類似的這種隨時間改變:如何更改一些PHP的echo'ed
[------]
[*-----]
[****--]
我不知道這是做這樣的事情最好的做法,但我想它使用一個簡單的echo
做,並且在外殼不變的進度條的位置。
之後的工作,我想刪除整個裝載的東西。
一般情況下,我該如何改變已有的echo
'ed?
你需要使用的ANSI轉義序列什麼。
StackOverflow上這個問題和答案覆蓋它,你應該能夠使其適應您的需求,一起來看看:Update Command-line Output, i.e. for Progress
chr(8)
是退格字符。隨着一點點的數學,你可以打印足夠多的移動光標回到你的酒吧開始,並在那裏你之前印刷的頂部打印新數據。
只是不打印在你的酒吧結束換行。
問題是:如果您在輸出上進行了任何類型的文本捕獲,它會將這些文本捕獲到捕獲的文本中,但在控制檯窗口中顯示得很好