ottosmops/consoleoutput

Laravel Console Output Trait

v1.1.2 2024-03-13 18:04 UTC

This package is auto-updated.

Last update: 2024-03-13 18:05:58 UTC


README

GitHub license Latest Stable Version Packagist Downloads

A trait you can pull into your Laravel-Commands (use \Ottosmops\Consoleoutput\ConsoleOutputTrait;). This should help to make the commands behave more like you would expect ("Silence is golden."). The effect: Errors and warnings are sent to stderr. Other messages are sent to stdout only if you call the command with -vor -vv. You can overwrite this when you call the methods. Just set another $verbosityLevel.

The trait is inspired by this blog-post: http://fideloper.com/laravel-symfony-console-commands-stderr

Installation

composer require ottosmops/consoleoutput

Usage

Just pull in the trait, and you are ready to go.

class TestCommand extents Illuminate\Console\Command
{
     use \Ottosmops\Consoleoutput\ConsoleOutputTrait;
     
     ...
     
     public function handle()
     {
        $this->info("This is only an info message."); // This message is only shown, if you call the command with '-v'. 
        $this->error("Here comes the error.");
     }
}

Methods

debug($message, $verbosityLevel = 'vv')     // black output
info($message, $verbosityLevel = 'v')       // blue output
success($message, $verbosityLevel = 'v')    // green
warn($message, $verbosityLevel = 'normal')  // orange
error($message, $verbosityLevel = 'normal') // red
fatal($message, $verbosityLevel = 'normal') //red and exits

Version 1.1

To avoid errors, the methods check if you call them from the command line. Otherwise the Laravel-Log-Methods are called.

License

The MIT License (MIT). Please see License File for more information.