Heim >Backend-Entwicklung >PHP-Tutorial >Wie registriere ich einen Dienstleister, der Illuminate für Nicht-Laravel-Projekte verwendet?!

Wie registriere ich einen Dienstleister, der Illuminate für Nicht-Laravel-Projekte verwendet?!

WBOY
WBOYOriginal
2016-08-04 09:20:381086Durchsuche

Wie registriere ich einen Dienstleister, der Illuminate für Nicht-Laravel-Projekte verwendet?!

Antwortinhalt:

Wie registriere ich einen Dienstleister, der Illuminate für Nicht-Laravel-Projekte verwendet?!

Suchen Sie die vom ServiceProvider registrierte Klasse und instanziieren Sie diese Klasse direkt zur Verwendung.

Sie können sich auf die Implementierung von Laravel beziehen:

IlluminateFoundationApplication

<code>class Example
{
    public function say()
    {
        echo 'hello';
    }
}


$app = new Illuminate\Container\Container;
$app->instance('Illuminate\Container\Container',$app);  //共享容器对象

//注册一个服务
$app->bind('example',function(){
    return new Example();
});


$app->make('example')->say();       //hello


$app2 = new Illuminate\Container\Container; //获得共享的容器对象,即$app

$app2->make('example')->say();      //hello
</code>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn