Laravel的目錄結構分析
根目錄結構
/app
/bootstrap
/public
/vendor
artisan
composer.json
server.php
1./app
整個Laravel 目錄中最需要我們注意的地方,包含設定(config)、路由(routing)、MVC 模型的三大模組都在這裡,專案的主要程式碼工作都在這個目錄下完成。
2./bootstrap
這個目錄主要是用來存放所有的第三方程式碼,包括框架函式原始碼(/vendor/laravel)、外掛和擴充套件等。
3./public
這個目錄是網站的訪問入口,請求都會進入 index.php ,同時存放所有對外開放的資源目錄,如 css、javascript 以及圖片等等皆被存放在此。
4./vendor
這個目錄主要是用來存放所有的第三方程式碼,包括框架函式原始碼(/vendor/laravel)、外掛和擴充套件等。
5.artisan
工匠指令,這是 Laravel 框架裡的命令列工具。
6.composer.json
該檔案是應用的配置檔案,描述了應用的相關資訊,如名稱、版本、許可證照等,同時也寫明瞭應用啟動時會自動載入某些資料夾或檔案,見”autoloand”,所以
當你需要在 controller 或者 model 新增子目錄時可以在 autoload 的 classmap 處申明;也允許你申明應用所需的依賴庫進而會在專案裡幫你安裝依賴庫;
7.server.php
該檔案其實是給php內建的伺服器用的,當使用 php -S localhost:9999 server.php 開啟內建伺服器的時候,就會使用server.php做了部分url相容的工作,往位址列輸入:localhost:9999即可開啟專案主頁。
而在laravel專案的目錄下敲命令:php artisan serve,會預設開啟埠8000,此時輸入http://localhost:8000,可開啟laravel專案的主頁。
不過需將/app/storage設定為可讀寫。
Application 目錄結構
/config
/controllers
/databases
/lang
/models
/start
/storage
/tests
/views
filters.php
routes.php
1./config
雖然 Laravel 程式在一開始的使用可以不做任何設定,但我們肯定還需要更多的設定來完成業務上的需求,所有的設定都放在這個目錄中。
2./controllers
這個目錄放 MVC 模型中的控制器(controller) 。
3./database
/migrations/:包含一些PHP類,允許Laravel更新當前資料庫的架構並同時保持所有版本的資料庫的同步。遷移檔案是使用Artisan工具生成的。
/seeds/: 包含允許Artisan工具用關係資料來填充資料庫表的PHP檔案。
4./lang
語言目錄,Laravel 框架的語系採用文字格式,先用目錄做各語系的分別,再依所需要的檔案來存放,預設是英文(“en”)。
轉換語言的方法是 config 目錄下的 application.php 檔案中的language ,設定值與語言資料夾名相同即可。
5./models
MVC 模型中的 M,就是我們的業務邏輯(business logic),基本上就是定義了我們要從資料庫中取出的內容、通過 web service 要傳出的內容等。
原則上,也是搭配著 Laravel 框架中 Eloquent ORM 對資料庫進行存取,包含在 auto-loading 之中。
6./start
包含與 artisan 工具、global(不限定本地環境,無論處於什麼環境都會載入裡面的內容)和 locale 上下文相關的啟動檔案,應用響應請求時會載入這些檔案。
7./storage
儲存 Laravel 各種服務的臨時檔案,如session、cache、log、views等,必須保證可以寫入,由 Laravel 自己維護。
8./tests
Laravel 框架整合了 PHPUnit ,方便我們對專門的程式進行單元測試,所以我們可以直接參考PHPUnit 檔案來編寫單元測試,在全新的檔案目錄中含有 example.test.php 的基本範例。可以使用artisan工具一次性執行所有的測試。
9./views
HTML 的模板(template),也就是 MVC 模型中的 V。而模板除了原始的 HTML 格式外,Laravel 框架提供了 Blade Template Engine ,讓我們可以用比較簡潔的方式編寫模板檔案,而這些檔案只要的副檔名改為 .blade.php ,例如 index.blade.php,模板引擎就會自動幫我們編譯了,想要了解更多的內容,說明檔案 – Blade Template Engine 中有詳細介紹。
10.filters.php
該檔案包含應用程式的篩選方法和一些過濾器,為程式使用。Laravel具有訪問控制和 XSS 保護的一些預定義篩選器。
11.routes.php
路由設定,接收請求,再根據我們的設定呼叫相應的程式進行回應。若是請求不存在或請求失敗則返回 404 或 500 的錯誤回應。
相關文章
- Android 目錄結構分析Android
- 分析Angular目錄結構Angular
- 一張圖掌握 Laravel 的目錄結構Laravel
- Linux 目錄結構:/lib 分析Linux
- EOS原始碼分析(7)目錄結構原始碼
- django的目錄結構Django
- linux的目錄結構Linux
- Laravel8學習筆記01 - 目錄結構Laravel筆記
- fabric 目錄結構
- Tomcat目錄結構Tomcat
- PostgreSQL 目錄結構SQL
- SpringBoot中的目錄結構Spring Boot
- libevent原始碼初識及目錄結構分析原始碼
- DedeCMS模板目錄的檔案目錄結構
- Tomcat目錄結構解析Tomcat
- 系統目錄結構
- 程式碼目錄結構記錄
- Macbook磁碟系統結構/檔案/目錄介紹分析Mac
- 8.6 規劃合理的目錄結構
- 初識Linux目錄結構Linux
- PostgreSQL:原始碼目錄結構SQL原始碼
- 2.3 sqlmap目錄及結構SQL
- postgre目錄結構簡介
- linux文件和目錄結構Linux
- Ubuntu系統目錄結構Ubuntu
- (一)Linux之目錄結構Linux
- ThinkPHP5.0目錄結構PHP
- Helm目錄結構講解
- (2)caffe總結之目錄結構
- Electron系列文章-程式目錄結構
- Linux學習——2 目錄結構Linux
- Android Studio目錄結構及工程專案結構解析Android
- Linux之旅第一篇-目錄結構及操作目錄Linux
- 在Linux中,目錄結構是怎樣的?Linux
- Kubernetes原始碼系列:Kubernetes目錄結構原始碼
- 11_Linux目錄結構講解Linux
- DB2目錄結構簡介DB2
- Linux檔案系統目錄結構Linux
- yolov5-v7.0 目錄結構YOLO