terminusstudio/slimfacades

Laravel like Facade for Slim 4

1.1.0 2021-04-24 06:32 UTC

This package is auto-updated.

Last update: 2024-05-24 13:10:15 UTC


README

Latest Version on Packagist Software License Total Downloads

Facades for Slim PHP Framework.

Install

Via Composer

$ composer require terminusstudio/slimfacades

Usage

Initializing

$app = Slim\Factory\AppFactory::create();
TS\Facades\Facade::setFacadeApplication($app);

Example Usage

use TS\Facades\Route;

Route::get('/', function ($request, $response) {
    ...
});

You can make use of the PHPDoc methods in most of the facade classes if you have IntelliSense/Code Completion enabled in your IDE. The PHPDoc comments support Slim functions and some other general PSR11 specific functions.

Extending

Easily add more functionality by extending from the Facade class.

use TS\Facades\Facade;

class Log extends Facade 
{
    public static function self()
    {
        return new Logger();
    }
}

Alternatively, you could also access the container by overriding the getFacadeAccessor method and returning the id/key of the object in the container.

use TS\Facades\Facade;

class Log extends Facade 
{
    public static function getFacadeAccessor()
    {
        return 'logger'; 
    }
}

License

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