Symfony控制台ProgressBar组件未显示在composer脚本中

时间:2014-12-04 09:31:48

标签: php progress-bar composer-php symfony-console

ProgressBar component调用的命令中使用composer script无效,因为未显示ProgressBar输出。

这是为什么?有没有办法强制执行渲染?


更新:现在(自升级到symfony 2.6后)显示,但控制台刷新无法正常工作,每次更新都会添加新行...

1 个答案:

答案 0 :(得分:1)

确保您使用的是该组件的最新版本。 使用以下代码段检查条形图是否正常:

<?php
$max=10;
$progress = new ProgressBar($output, $max);
$progress->start();

for ($i = 0; $i <= $max; ++$i) {
 sleep(1);
 $progress->advance();
}
$progress->finish();

如果是这种情况,那么在每个$progress->advance();步骤之间执行的任务似乎都会向输出写入一些东西,这样就可以在每一步都重新绘制条形图。