php - Symfony 控制台 ProgressBar 组件未显示在 Composer 脚本中

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

使用ProgressBar componentcomposer script 调用的命令中没有效果,因为未显示 ProgressBar 输出。

这是为什么呢?有没有办法强制其渲染?


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

最佳答案

确保您使用的是该组件的最新版本。 使用以下代码片段检查栏是否正常工作:

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

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

如果是这种情况,您在每个 $progress->advance(); 步骤之间执行的任务似乎会向输出写入一些内容,这使得在每个步骤中都会重新绘制条形图。

关于php - Symfony 控制台 ProgressBar 组件未显示在 Composer 脚本中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27290467/

相关文章:

php - 将命令从 PHP 传递到 Python

php - 从 MySQL 列数据填充下拉列表

javascript - 向下滚动到 Javascript 进度条后加载它

javascript - 在 AJAX 上传期间显示进度条的百分比值

php - 在Laravel 5中打包创建一个新的ServiceProvider/Facade

php - Composer.phar 安装问题

symfony - Composer 更新结果为 "symfony/framework-bundle 2.0.7 requires symfony/translator 2.0.7 -> no matching package found."

php - 连接两个表进行删除

php - 使用 Yii2 过滤占位符

android - 带有加载指示器的 TextInputLayout