xtompie/lainstance

Laravel container extension for resolving and defining singletons alongside classes
2,390
Install
composer require xtompie/lainstance
Latest Version:2.0
License:MIT
Last Updated:Jun 3, 2021
Links: GitHub  ·  Packagist
Maintainer: xtompie

Lainstance

Laravel container extension for resolving and defining singletons alongside classes

Installation

composer require xtompie/lainstance

Usage

Getting instance

<?php

use Xtompie\Lainstance\Instance;

class Foo
{
    use Instance;
}

$foo = Foo::instance();

Automatic Injection

<?php

use Xtompie\Lainstance\Instance;

class Bar
{
}

class Foo
{
    use Instance;

    public function __construct(
        public Bar $bar
    ) {}
}

$foo = Foo::instance();
echo get_class($foo->bar); // => Bar

Shared aka singleton binding

<?php

use Xtompie\Lainstance\Instance;
use Xtompie\Lainstance\Shared;

class Foo implements Shared
{
    use Instance;
}

echo Foo::instance() === Foo::instance(); // => 1

Related Packages

stefanius/singleton-pattern

Helper package to implement a Singleton class.

67 1
php-tmdb/laravel

Laravel Package for TMDB ( The Movie Database ) API. Provides easy access to the...

53,315 160
laravel-ja/laravel

The Laravel Framework.

5,667 17
kavenegar/laravel

laravel 4 and 5 kavenegar integration

368,693 86
reliese/laravel

Reliese Components for Laravel Framework code generation.

3,991,690 1,705