鍍金池/ 問答/PHP  Linux  HTML/ laravel框架中使用static::$app->make是什么意思

laravel框架中使用static::$app->make是什么意思

laravel框架中為什么可以使用static::的寫法,難道有個(gè)叫static的類,然后訪問一個(gè)靜態(tài)方法make嗎?
但是static是關(guān)鍵字,不可能作為類名吧
具體位置在vendor/laravel/framework/src/Illuminate/Support/Facades/Auth.php

class Auth extends Facade
{
    /**
     * Get the registered name of the component.
     *
     * @return string
     */
    protected static function getFacadeAccessor()
    {
        return 'auth';
    }

    /**
     * Register the typical authentication routes for an application.
     *
     * @return void
     */
    public static function routes()
    {
       static::$app->make('router')->auth();
    }
}
回答
編輯回答
款爺

static:: 對變量一般是指當(dāng)前對象下的變量
比如說 父類有個(gè)屬性 叫 xxx,子類也有個(gè)屬性叫xxx,
父類有個(gè)方法doxxx,
當(dāng)子類調(diào)用doxxx 這個(gè)方法時(shí),
doxxx 里面去 static::xxx 就是取到的子類的,而不是父類的。
laravel 這個(gè)$app應(yīng)該是指當(dāng)前應(yīng)用這個(gè)大對象

2017年3月29日 07:03
編輯回答
墨沫

可以搜索一下 延遲靜態(tài)綁定

2017年7月16日 15:02