代码之家  ›  专栏  ›  技术社区  ›  SaidbakR

为什么我的Laravel安装需要为facades别名加前缀\反斜杠

  •  0
  • SaidbakR  · 技术社区  · 6 年前

    我不知道下面这个例子出现故障的原因:

    Auth::user()->id 
    

    \Auth::user()->id
    

    这是来自 config/app.php

    'aliases' => [
    
            'App' => Illuminate\Support\Facades\App::class,
            'Artisan' => Illuminate\Support\Facades\Artisan::class,
            'Auth' => Illuminate\Support\Facades\Auth::class,
            'Blade' => Illuminate\Support\Facades\Blade::class,
            'Broadcast' => Illuminate\Support\Facades\Broadcast::class,
    

    服务器是Ubuntu 16.04上的Apache

    1 回复  |  直到 6 年前
        1
  •  2
  •   ceejayoz    6 年前

    那是 how namespaces work

    当您在典型的Laravel模型、控制器等中时,您就在它的名称空间中—类似于 App App\Http\Controllers Auth::foo() 方法 App\Auth::foo() App\Http\Controllers\Auth::foo() 分别是。

    这就是为什么 the examples that teach you how to use Auth 所有人都知道 use Illuminate\Support\Facades\Auth; 在他们使用 Auth 上课,然后说:

    我们将通过 认证 facade,所以我们需要确保导入

    推荐文章