1. 程式人生 > >1-5.Laravel框架之目錄介紹

1-5.Laravel框架之目錄介紹

目錄結構分析

(1)app目錄:專案的核心目錄,主要用於存放核心程式碼,也包括控制器、模型以及路由。

控制器存放位置:

模型檔案存放位置,模型檔案直接寫在app目錄下即可,但是也可以在該目錄下建立Model目錄,我們一般會在Http目錄下建立一個Models目錄。

 

(2)bootstrap目錄,laravel啟動目錄

autoload.php檔案用於自動載入需要的類檔案。

(3)config目錄,專案的配置目錄,主要存放配置檔案,比如資料庫的配置

(4)database目錄,資料遷移目錄

目錄包含了資料遷移及填充檔案,就是使用檔案的方式,來管理資料庫,建立一個PHP檔案,在檔案中設計表結構,執行該檔案,完成表的建立。

(5)public目錄,專案的入口檔案和系統的靜態資源目錄(css,img,js,uploads)

(6)resources目錄,存放檢視檔案

(7)routes目錄中的web.php檔案是定義路由,

laravel中所有的訪問,都必須事先定義好路由

(8)storage目錄,主要是存放快取檔案和日誌檔案,注意,如果在linux環境下,該目錄需要有可寫許可權。

(9)vendor目錄,主要是存放第三方的類庫檔案,laravel思想主要是共同的開發,不要重複的造輪子(例如,裡面可能存在驗證碼類,上傳類,郵件類),該目錄還存放laravel框架的原始碼。注意如果要使用composer軟體管理的,composer下載的類庫都是存放在該目錄下面的。

 

(10).env檔案:主要是設定一些系統相關的環境配置檔案資訊。config目錄裡面的檔案配置內容一般都是讀取該檔案裡面的配置資訊(config裡面的配置項的值基本都是來自.env檔案)

(11)artisan腳手架檔案,主要用於生成的程式碼的,比如生成控制器,模型檔案等。

執行此命令有2點要求

(a)、php必須新增環境變數,並且保證版本能是laravel所要求的版本。

(b、執行命令時,註冊artisan檔案必須存在當前命令路徑下。

(12)composer.json依賴包配置檔案

目錄詳細描述彙總:

App目錄

app目錄包含了應用的核心程式碼

Bootstrap目錄

bootstrap目錄包含了少許檔案,用於框架的啟動和自動載入配置,還有一個cache資料夾用於包含框架為提升效能所生成的檔案,如路由和服務快取檔案;

Config目錄

config目錄包含了應用所有的配置檔案,建議通讀一遍這些配置檔案以便熟悉所有配置項;

Database目錄

database目錄包含了資料遷移及填充檔案,如果你喜歡的話還可以將其作為 SQLite 資料庫存放目錄;

Public目錄

public目錄包含了入口檔案index.php和前端資原始檔(圖片、JavaScript、CSS等);

Resources目錄

resources目錄包含了檢視檔案及原生資原始檔(LESS、SASS、CoffeeScript),以及本地化檔案;

Storage目錄

storage目錄包含了編譯過的Blade模板、基於檔案的session、檔案快取,以及其它由框架生成的檔案,該目錄被細分為成appframeworklogs子母錄,app目錄用於存放應用要使用的檔案,framework目錄用於存放框架生成的檔案和快取,最後,logs目錄包含應用的日誌檔案;

Tests目錄

tests目錄包含自動化測試,其中已經提供了一個開箱即用的PHPUnit示例;每一個測試類都要以 Test 開頭,你可以通過 phpunit 或 php vendor/bin/phpunit 命令來執行測試。

Routes目錄

routes 目錄包含了應用的所有路由定義。Laravel預設提供了三個路由檔案:web.phpapi.phpconsole.php

web.php檔案包含的路由都會應用web中介軟體組,具備Session、CSRF防護以及Cookie加密功能,如果應用無需提供無狀態的、RESTful風格的API,所有路由都會定義在web.php檔案。

api.php 檔案包含的路由應用了api中介軟體組,具備頻率限制功能,這些路由是無狀態的,所以請求通過這些路由進入應用需要通過token進行認證並且不能訪問Session狀態。

console.php 檔案用於定義所有基於閉包的控制檯命令,每個閉包都被繫結到一個控制檯命令並且允許與命令列IO方法進行互動,儘管這個檔案並不定義HTTP路由,但是它定義了基於控制檯的應用入口(路由)。

Vendor目錄

vendor目錄包含Composer依賴。