COMO CREAR COMANDOS PERSONALIZADOS EN LARAVEL

Después de de comentar que son los interfaz Artizsn de Laravel" os voy a hablar de como crear comandos en Laravel y para eso se puede usar el comando "make:command" y después personalizar su lógica. Se eplica paso a paso:
  1. Generar un comando personalizado: Usar el comando

    php artisan make:command NombreDelComando
    Donde "NombreDelComando" es el nombre de tu comando (por ejemplo, EnviarCorreo) que creará un archivo en la carpeta "app/Console/Commands" con el nombre "NombreDelComando.php".

  2. Personalizar el comando: Abrir el archivo generado ("app/Console/Commands/NombreDelComando.php"). Con la estructura:

    namespace App\Console\Commands;
    
    use Illuminate\Console\Command;
    
    class NombreDelComando extends Command
    {
    protected $signature = 'comando:nombre';
      //ejemplo protected $signature = 'saludar:usuario {nombre}';
    protected $description = 'Descripción de lo que hace el comando';
    
    public function __construct()
    {
    parent::__construct();
    }
    
    public function handle()
    {
    // Lógica del comando aquí
    }
    }
    
    Donde "$signature" define el nombre del comando y sus argumentos. Por ejemplo: "comando:nombre {parametro}" para un argumento obligatorio o "comando:nombre {--opcion}" para una opción opcional, "$description" es una breve descripción del comando que aparece al ejecutar "php artisan list".En "handle()" estará el código que se ejecutará cuando se invoque el comando.

  3. Definir la lógica del comando En el método "handle()" irá el código. Por ejemplo, un comando que imprime un mensaje:

    public function handle()
    {
    $this->info('¡Hola! Este es mi comando personalizado.');
    }
    
    Opciones para mostrar texto:
    • $this->info('mensaje'): Muestra un mensaje en verde (éxito).
    • $this->error('mensaje'): Muestra un mensaje en rojo (error).
    • $this->line('mensaje'): Muestra un mensaje simple.
    • $this->ask('Pregunta'): Solicita entrada del usuario.


  4. Registrar el comando: Por lo general, Laravel registra automáticamente los comandos ubicados en "app/Console/Commands". Si no se registra, es necesario verificar que el archivo "app/Console/Kernel.php" incluye el comando en la propiedad $commands (esto no suele ser necesario con comandos generados por "make:command").