adlacruzes/php-base-exception

PHP base exception with default message and custom value

2.5.0 2022-11-22 12:13 UTC

This package is auto-updated.

Last update: 2024-03-22 15:37:03 UTC


README

Minimum PHP Version Packagist Github actions

PHP base exception is a library that provides exceptions with a default message and a custom value in an easy way.

Requirements

PHP needs to be a minimum version of PHP 7.2.

Installation

The recommended way to install is through Composer.

composer require adlacruzes/php-base-exception

Usage

Create an exception that extends from BaseException.

use Adlacruzes\Exceptions\BaseException;

class SomethingNotFoundException extends BaseException {}

Then the exception can be called with no arguments.

try {
    throw new SomethingNotFoundException();
} catch (SomethingNotFoundException $e) {
    echo $e->getMessage();
}

The method getMessage() returns an auto generated message based on the class name without typing anything more.

echo $e->getMessage();
// Something not found

Default message

You can choose a default message instead. Just initialize the message variable.

class SomethingNotFoundException extends BaseException {

    /**
     * @var mixed
     */
    protected $message = 'This is a default message';
    
}
try {
    throw new SomethingNotFoundException();
} catch (SomethingNotFoundException $e) {
    echo $e->getMessage();
}
echo $e->getMessage();
// This is a default message

Message with contextual information

In addition to the message, you can provide more information to the exception and it will append to the result.

try {
    throw new SomethingNotFoundException('information');
} catch (SomethingNotFoundException $e) {
    echo $e->getMessage();
}

And the output will be:

echo $e->getMessage();
// Something not found: information