gpt4 book ai didi

unix - 使用 Symfony 将更新值写入控制台

转载 作者:行者123 更新时间:2023-12-02 22:23:02 25 4
gpt4 key购买 nike

wget 等实用程序可以将其下载百分比写入控制台并不断更新它,而无需编写新行。这个功能叫什么?Symfony 的控制台组件是否可以实现?

最佳答案

我使用 1ed 的回答来了解 Symfony 如何使用 2.2 中可用的进度助手来完成它。十六进制字符代码“\x08”(ANSI 退格字符)将删除单个字符。如果您跟踪最后一行的长度,并使用 str_repeat,则可以达到预期的效果。

概念验证:

<?php
$lastLineSize = 0;

for ($i = 0; $i <= 50; $i++) {
echo str_repeat("\x08", $lastLineSize);
echo "Iteration {$i} of 50";
$lastLineSize = strlen("Iteration {$i} of 50");
usleep(100000);
}

echo " - Done\n";

输出:

[root@dev /home/myuser] > php test.php
Iteration 50 of 50 - Done
[root@dev /home/myuser] >

关于unix - 使用 Symfony 将更新值写入控制台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13407855/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com