Компонент ProgressBar консоли Symfony не отображается в сценариях композитора

Использование компонента ProgressBar в команде, вызываемой скрипт композитора не действует, так как вывод ProgressBar не отображается.

Почему это? Есть ли способ обеспечить его рендеринг?


Обновление: теперь (с момента обновления до symfony 2.6) оно отображается, но обновление консоли работает некорректно и для каждого обновления добавляется новая строка...


person Phil Thomas    schedule 04.12.2014    source источник


Ответы (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(); шагом, кажется, записывает что-то на вывод, что заставляет полосу перерисовываться на каждом шаге.

person Erik Theoboldt    schedule 11.05.2015