Laravel 6

Utiliser le résultat d'une commande dans une autre commande artisan

Avatar de CinquièmeDimension
CinquièmeDimension

Salut à tous!

Sur un projet Lumen 9 (j'ai posté dans Laravel 6 mais c'est la même):

J'ai fait des commandes artisan personnalisées et je veux créer une commande qui centralisera les autre (qui pourront toujour être utilisées individuellement). Mais je n'arrive pas à stocker le résultat d'une commande vers une autre:

Dans le handle() de ma masterCommand

$output = new BufferedOutput;
$files = $this->call('process:command123');
$output = $output->fetch();
$this->info($output);
if($output == ...

Dans le handle de ma commande process::command123

[...]
$this->info($count);

J'ai essayé 50 trucs differents mais je ne suis arrivé à aucun résultat. Pas moyen de faire un return, ni de capter l'info dans une variable pour la tester...

Si quelqu'un a une idée, je suis preneur :D

Avatar de CinquièmeDimension
CinquièmeDimension

Au temps pour moi, en fait on peut très bien faire un return. Du coup ça donne:

$output = $this->call('process:command123'); Et la commande finit avec return.

Je ne sais pas si c'est que le premier essai que j'avais fait avec Artisan::call() ne fonctionnait pas ou le composer dump-autoload que j'ai fait plus tard qui a fonctionné mais maintenant ça fonctionne.

J'espère t'avoir aidé, toi qui tombe sur ce post en 2028...

Vous ne pouvez pas répondre à ce sujet.