Índice

Crear un comando para la Consolaconsola

Para integrar sus propios comandos en la consola Symfony, debe colocarlos dentro de un directorio Command de sus bundles. El nombre del archivo debe terminar por “Command” (por ejemplo, MeteoCommand) y extender la clase Symfony\Bundle\FrameworkBundle\Command\ContainerAwareCommand.

Los comandos tienen dos métodos principales: configure() y execute().

1. La configuración de un comando

Entre otras cosas, el método configure() define el nombre, la descripción, los argumentos y las opciones del comando.

<?php  
  
namespace Eni\DemoBundle\Command;  
  
use Symfony\Bundle\FrameworkBundle\Command\ContainerAwareCommand; 
use Symfony\Component\Console\Input\InputInterface;  
use Symfony\Component\Console\Output\OutputInterface;  
use Symfony\Component\Console\Input\InputArgument;  
use Symfony\Component\Console\Input\InputOption;  
  
class DemoCommand extends ContainerAwareCommand  
{  
   protected function configure()  
   {  
       $this  
           ->setName(’eni:demo:command’)  
           ->setDescription(’Descripción del comando.’)  
           ->addArgument(’mi_argumento’)  
           ->addOption(’mi_opción’)   ...