This is a helper trait that I use when I have a Laravel console command that I’m using on development but would never want that command to run in a production environment. It’s always nice to have a system in place to prevent accidents from happening.
PreventsProduction.php
<?php namespace App\Console; trait PreventsProduction { /** * Prevent the command from executing on production. */ protected function preventOnProduction() { if ($this->laravel->environment() === 'production') { $this->error('Cannot run in production'); exit; } } }
Include the trait in your console command and use it like so:
SomeConsoleCommand.php
use PreventsProduction; /** * Execute the console command. * * @return mixed */ public function handle() { $this->preventOnProduction(); // Nothing past here will be run on production. }