Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 12.11.2015 16:59:18

Как показать вывод команды artisan в Blade?

Собственно есть такой классный progressbar
, который может показывать выполнение команды в консоли.

В консоли все работает отлично:

$progress = new ProgressBar($this->output, 50);
		// start and displays the progress bar
		$progress->start();
		$i = 0;
		while ($i++ < 50) {
			sleep(1);
			$progress->advance();
		}

на выходе 0/2 [>---------------------------]   0% и бегущая "птитчка". 

Но так как команд много, иногда возникает желание запускать даные команды из GUI не заходя в консоль. Делается это очено просто (согласно документации )

// Блок artisan
Route::get('artisan/{id}', function($id)
{
    return \Artisan::call($id, []);
});

И вот хотелось бы чтобы и прогрес баз показывался в консоли. немного погуглив я нашел ссылочку http://lukaswhite.com/blog/post/2014/ru … board-gui/
радостный начал тестить - на выходе ничего, поковыряв исходный класс а потом и найдя ссылку https://laracasts.com/discuss/channels/ … -laravel-5
я понял что процес затягивается:
Может кому пригодится в L5 это решается так:

use Symfony\Component\Console\Output\StreamOutput;
$this->output = new StreamOutput(fopen('php://output', 'w'));
$bar = new ProgressBar($this->output, 10);

Либо

use Symfony\Component\Console\Output\BufferedOutput;
$output = new BufferedOutput;
$bar = new ProgressBar($output, 10);

Но проблема в том, что вывод в GUI появляется уже в конце когда скрипт отработал, а хотелось бы чтобы это было в виде прогресбара...
Догадываюсь что все не все так просто и это нужно делать как-то иначе... 
Прошу просветить, как решить проблему... Или хотя бы пример реализации чего то похожего...

Не в сети

Подвал раздела