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?!
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>