Форум программистов, компьютерный форум, киберфорум
and_y87
Войти
Регистрация
Восстановить пароль
Оценить эту запись

yii2 console progressBar

Запись от and_y87 размещена 24.05.2022 в 19:07
Обновил(-а) and_y87 24.05.2022 в 19:10

Что бы сделать ProgressBar при выполнении консольных команд в Yii2, код обработчика итерации надо заключить между строчками кода:
Код:
Console::startProgress( ( $done = 0 ), $total );
Console::endProgress();
пример:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public function actionCommand()
{
  $userQuery = User::find();
 
  $total = $userQuery->count();
  echo "\r\nКол-во: $total\r\n";
 
  yii\helpers\Console::startProgress( ( $done = 0 ), $total );
 
  /** @var User $user */
  foreach ( $userQuery->batch() as $user) {
    // код итерации
    yii\helpers\Console::updateProgress( ++$done $total );
  }
  yii\helpers\Console::endProgress();
}
получим
Код:
$ yii test/command

Кол-во: 72594
[===================-----------------------------] 100% (38916/72594) ETA: n/a
Всего комментариев 0
Комментарии
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru