[英]Can someone explain what this code does in laravel
Guard
類用於身份驗證,即登錄用戶,檢查是否有經過身份驗證的用戶,檢索經過身份驗證的用戶,將其注銷等。
我想說的(訪問文檔和各種教程)最常用的方法是使用Auth
Facade或auth() helper函數。 無論采用哪種方法,您都可以使用相同的方法,例如
auth()->user()
或Auth::user()
將返回當前經過身份驗證的用戶。
auth()->id()
或Auth::id()
將返回當前經過身份驗證的用戶的id
。
auth()->check()
或Auth::check()
會告訴您當前用戶是否已登錄。
等等
無論哪種情況(使用auth()->
或Auth::
您都將訪問Guard
類上的方法。
Laravel也有一個叫做Service Container的東西,這是使您能夠進行依賴注入的一種方法。 從本質上講,這是您可以自動獲取類的實例的地方,而無需執行諸如new ClassName()
。 乍一看似乎沒什么大不了的,但是如果您有一個需要向其構造函數傳遞不同變量和類的類,則可以在容器中進行設置,因此您不必擔心。 另一個好處是您想使用一個類的相同實例,而不是每次都創建一個新實例,這也可以使用容器來完成。
現在,有些人更喜歡使用依賴項注入,而不是使用Facades或helper函數(有關更多信息,請參見此處 )。 對於您的示例中的案例,您將注入Guard
類,以便您可以將其作為類的屬性進行訪問,而不是使用Facade或helper函數。 沒有比這更多的了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.