2016-08-16 3 views
0

Спасибо всем заблаговременно.Как создать фасад в Laravel 5.0 без использования композитора?

Я пытаюсь создать Facades для своих пользовательских и общих функций в laravel 5.0, также я не хочу создавать контроллер для этого, поэтому я использую Facades.

Я пробовал почти каждый учебник, но это мне не помогает.

Пожалуйста, помогите мне создать фасад без использования Composer в Laravel 5.0.

Еще раз спасибо.

ответ

1

Прежде всего вы создаете класс фасада, как это:

namespace App\Facades; 

use Illuminate\Support\Facades\Facade; 

class SomeFacade extends Facade 
{ 
    protected static function getFacadeAccessor() 
    { 
     return 'someService'; 
    } 
} 

Затем создать класс обслуживания, которые держат свои функциональные возможности:

namespace App\Services; 

class SomeService { ... } 

Наконец, вы должны зарегистрировать его и установите для него псевдоним (не обязательно):

namespace App\Providers; 

use Illuminate\Support\ServiceProvider; 

class AppServiceProivider extends ServiceProvider 
{ 
    (...) 
    public function register() 
    { 
     $this->app->singleton('someService', function() { 
      return new \App\Services\SomeService(); 
     }); 
     $this->app->alias('SomeServiceFacade', \App\Facades\SomeFacade::class); 
    } 
} 

Теперь вы можете позвонить своим методам из SomeService с:

SomeServiceFacade::someMethhod(); 

или

app('someService')->someMethhod(); 
+0

Если вы не 'ум Пожалуйста, вы можете объяснить это больше с файлами заголовков/ –

+0

С«заголовочных файлов»вы имеете в виду, что? –

+0

Я имею в виду, пожалуйста, объясните этот пример полным кодом, включая пространства имен. –

Смежные вопросы