Laravel 是一個優雅的 PHP 框架,旨在簡化現代 Web 應用程式的開發。當您建立新的 Laravel 專案時,它會附帶一個組織良好的目錄結構,鼓勵最佳實踐和明確的關注點分離。讓我們深入了解主要目錄及其用途。
全新的 Laravel 安裝包含以下關鍵目錄:
project-root/ |-- app/ |-- bootstrap/ |-- config/ |-- database/ |-- public/ |-- resources/ |-- routes/ |-- storage/ |-- tests/ |-- vendor/
這是應用程式的核心,大部分邏輯都駐留在其中。 app/ 目錄包含各種應用程式元件的子資料夾:
控制台/:包含自訂 Artisan 指令。
Events/:定義您的應用程式可以偵聽的事件。
異常/:處理異常和自訂錯誤報告。
http/:
控制器/:容納應用程式的控制器。
Middleware/:儲存用於過濾 HTTP 請求的中間件。
Models/:Eloquent 模型的預設位置。
Observers/:保存用於處理模型事件的觀察者類別。
Policies/:包含特定模型的授權邏輯。
Providers/:儲存引導應用程式各個部分的服務提供者。
該目錄包含應用程式的初始引導檔案。這裡最值得注意的檔案是 app.php,它初始化 Laravel 框架。
此外,它還包含一個cache/資料夾,用於儲存框架產生的快取檔案以提高效能。
顧名思義,該目錄包含應用程式的所有設定檔。這些檔案可讓您管理服務、資料庫連線、郵件、快取等的設定。例如:
app.php 用於核心應用程式設定。
database.php 用於資料庫配置。
mail.php 用於電子郵件服務設定。
此目錄管理所有與資料庫相關的檔案:
factories/:包含用於播種測試資料的工廠類別。
migrations/:儲存用於定義資料庫架構的遷移檔案。
播種機/:容納播種機,用於使用樣本資料填充資料庫。
此目錄是 Web 要求的入口點,包含應用程式的前端檔案。主要內容包括:
index.php:處理所有傳入請求的主檔案。
靜態資源,例如映像、CSS 和 JavaScript 檔案。
該目錄儲存將被編譯或用於產生視圖的應用程式資源。子目錄包括:
views/:包含應用程式前端的 Blade 範本檔案。
lang/:儲存用於本地化的語言檔案。
css/ 和 js/(位於 sass/ 和 js/ 內):CSS 和 JavaScript 資源的預設資料夾。
這是應用程式的路由邏輯所在的位置。 Laravel 為不同的路線類型提供單獨的文件:
web.php:處理 Web 請求的路由(通常帶有會話和 cookie)。
api.php:處理 API 請求的路由(無狀態)。
console.php:定義自訂 Artisan 指令。
channels.php:定義事件廣播頻道。
此目錄包含您的應用程式和框架本身產生的檔案:
app/:儲存應用程式產生的檔案。
framework/:儲存框架快取、會話和編譯視圖。
logs/:包含用於偵錯和錯誤追蹤的日誌檔案。
所有應用程式測試都儲存在這裡。預設情況下,它包含功能和單元測試的目錄:
功能/:評估整個應用程式堆疊功能的測試。
Unit/:驗證特定函數或類別的測試。
目錄包含所有透過 Composer 安裝的第三方軟體包。您絕對不應該直接修改此資料夾。
在 Laravel 中開發時,了解每個目錄的用途有助於您邏輯地組織程式碼。例如:
將業務邏輯放置在應用程式/模型中的模型中。
在routes/web.php或routes/api.php中編寫自訂路由。
在資源/視圖中保留可重複使用的元件,例如版面配置。
遵循 Laravel 約定:Laravel 有一個預先定義的結構是有原因的-除非絕對必要,否則請堅持使用它。
使用子資料夾實現可擴充性:對於較大的項目,請考慮在控制器或模型中建立子資料夾以對相關文件進行分組。
利用 artisan 指令:使用 php artisan make:model、php artisan make:controller 等指令,自動將檔案放置在正確的位置。
透過掌握 Laravel 的目錄結構,您將有信心有效地導航、維護和擴展您的專案。請繼續關注第 4 天,我們將深入配置 Laravel 以滿足您的開發需求!
以上是探索 Laravel 目錄結構的一天的詳細內容。更多資訊請關注PHP中文網其他相關文章!