
Hi guys,
A small tip for your weekend. For Laravel's devs out there.
Ever wonder how can I write the error and then stop the command immediately (with an error code) in 1 line?
Lemme show you how :v
Today our code looks like this:
public function handle(): int
{
if ($somethingWentWrong) {
$this->error('Uh oh, unexpected error');
return 1;
}
}
Let's add a bit of cosmetic for it. Simply:
if ($somethingWentWrong) {
return $this->error('Uh oh, unexpected error') || 1;
}
// or
if ($somethingWentWrong) {
return $this->error('Uh oh, unexpected error') ?: 1;
}
In 1 line only, awesome!
Explanation
->error or ->info or ->warn ,... They are returning the void type.
|| (OR) or ?: (ternary operator) recognizes the void type as a falsy value.
\=> 1 will be returned in the code example above!
Conclusion
Enjoy!
About the author
develops awesome software, contributes to OSS, writes tech tips, and loves Vietnamese milk coffee!
Comments
Join the discussionNo comments yet. Be the first to comment.



