Laravel加载服务提供商和别名

时间:2016-05-05 00:40:58

标签: laravel laravel-5 laravel-5.2

也许只是我,但我不确定这是做什么以及为什么他们需要这样做?

在laravel中加载的提供程序中,他们执行了此操作



'providers' => [

        /*
         * Laravel Framework Service Providers...
         */
        Illuminate\Auth\AuthServiceProvider::class,
        Illuminate\Broadcasting\BroadcastServiceProvider::class,

...




别名



'aliases' => [

        'App' => Illuminate\Support\Facades\App::class,
        'Artisan' => Illuminate\Support\Facades\Artisan::class,

...




:: class做了什么,为什么他们不能这样离开呢?



'aliases' => [

        'App' => Illuminate\Support\Facades\App,
        'Artisan' => Illuminate\Support\Facades\Artisan,




1 个答案:

答案 0 :(得分:0)

它只返回带名称空间的类名!

从PHP 5.5开始,class关键字也用于类名解析。 您可以使用ClassName :: class获取包含ClassName类的完全限定名称的字符串。  这对于命名空间类特别有用。

namespace NS {
    class ClassName {
    }
    echo ClassName::class;
}

以上示例将输出:

NS\ClassName

Source 1

Php manual