![](/img/trans.png)
[英]How to make a custom helper function, available in every controller for Laravel 5
[英]How laravel's helper functions are available globally in every file?
我剛剛開始探索 laravel 但我有一個困惑。 我知道如何創建自己的自定義 function 文件並使用 compose.json 文件使其在全球范圍內可用,但我試圖弄清楚 laravel 的幫助程序 ZC1C425268E68385D1AB5074C17A94F 是如何訪問的(包括源文件和路徑)在 composer.json 文件中找到任何自動發現,也不是在任何服務提供者中。
PS:我只簽入了 Providers/ Directory。
誰能告訴我這東西是怎么工作的?
通過 composer Laravel 定義了哪些文件應該被自動加載。 使用 Laravel/framework 中composer.json文件中的行,它指定了應該自動加載的內容。
它加載以下 文件。
如果您願意,您可以創建類似的自動加載器,但是在此類幫助器中具有大量邏輯很容易成為一種反模式。 作為邏輯,當人們必須查看您的項目時,它比基於 class 的邏輯更隱藏。
在 laravel 應用程序根目錄上的composer.json
文件中,查找條目autoload
。
這意味着這些目錄上的所有方法都是自動加載的。
這就是為什么如果您(新)在這些目錄中創建了一個方法 / function 並且它沒有按預期工作(或未找到),您需要運行composer dump-autoload
以確保所有內容都已加載。
這也是我放置自定義幫助文件的地方:
"files": [
"app/Helpers/helpers.php"
]
然后,此處的所有 function 將在所有控制器、特征和視圖上可用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.