目錄或文件說明

|– app包含Controller、Model、路由等在內的應用目錄,大部分業務將在該目錄下進行

|  |– Console命令行程序目錄

|  |  |– Commands包含了用于命令行執行的類,可在該目錄下自定義類

|  |  |– Kernel.php命令調用內核文件,包含commands變量(命令清單,自定義的命令需加入到這里)和schedule方法(用于任務調度,即定時任務)

|  |– Events事件目錄

|  |– Exceptions包含了自定義錯誤和異常處理類

|  |– HttpHTTP傳輸層相關的類目錄

|  |  |– Controllers控制器目錄

|  |  |– Middleware中間件目錄

|  |  |– Requests請求類目錄

|  |  |– Kernel.php包含http中間件和路由中間件的內核文件

|  |  |– routes.php強大的路由

|  |– Jobs該目錄下包含隊列的任務類

|  |– Listeners監聽器目錄

|  |– Providers服務提供者目錄

|  |– User.php自帶的模型實例,我們新建的Model默認也存儲在該目錄

|– bootstrap框架啟動載入目錄

|  |– app.php創建框架應用實例

|  |– autoload.php自動加載

|  |– cache存放框架啟動緩存,web服務器需要有該目錄的寫入權限

|– config各種配置文件的目錄

|  |– app.php系統級配置文件

|  |– auth.php用戶身份認證配置文件,指定好table和model就可以很方便地用身份認證功能了

|  |– broadcasting.php事件廣播配置文件

|  |– cache.php緩存配置文件

|  |– compile.php編譯額外文件和類需要的配置文件,一般用戶很少用到

|  |– database.php數據庫配置文件

|  |– filesystems.php文件系統配置文件,這里可以配置云存儲參數

|  |– mail.php電子郵件配置文件

|  |– queue.php消息隊列配置文件

|  |– services.php可存放第三方服務的配置信息

|  |– session.php配置session的存儲方式、生命周期等信息

|  |– view.php模板文件配置文件,包含模板目錄和編譯目錄等

|– database數據庫相關目錄

|  |– factories5.1以上版本的新特性,工廠類目錄,也是用于數據填充

|  |  |– ModelFactory.php在該文件可定義不同Model所需填充的數據類型

|  |– migrations存儲數據庫遷移文件

|  |– seeds存放數據填充類的目錄

|     |– DatabaseSeeder.php執行php artisan db:seed命令將會調用該類的run方法。該方法可調用執行該目錄下其他Seeder類,也可調用factories方法生成ModelFactory里定義的數據模型

|– public網站入口,應當將ip或域名指向該目錄而不是根目錄。可供外部訪問的css、js和圖片等資源皆放置于此

|  |– index.php入口文件

|  |– .htaccessApache服務器用該文件重寫URL

|  |– web.configIIS服務器用該文件重寫URL

|– resources資源文件目錄

|  |– assets可存放包含LESS、SASS、CoffeeScript在內的原始資源文件

|  |– lang本地化文件目錄

|  |– views視圖文件就放在這啦

|– storage存儲目錄。web服務器需要有該目錄及所有子目錄的寫入權限

|  |– app可用于存儲應用程序所需的一些文件

|  |– framework該目錄下包括緩存、sessions和編譯后的視圖文件

|  |– logs日志目錄

|– tests測試目錄

|– vendor該目錄下包含Laravel源代碼和第三方依賴包

|– .env環境配置文件。config目錄下的配置文件會使用該文件里面的參數,不同生產環境使用不同的.env文件即可。

|– artisan強大的命令行接口,你可以在app/Console/Commands下編寫自定義命令

|– composer.json存放依賴關系的文件

|– composer.lock鎖文件,存放安裝時依賴包的真實版本

|– gulpfile.jsgulp(一種前端構建工具)配置文件

|– package.jsongulp配置文件

|– phpspec.ymlphpspec(一種PHP測試框架)配置文件

|– phpunit.xmlphpunit(一種PHP測試框架)配置文件

|– server.phpPHP內置的Web服務器將把這個文件作為入口。以public/index.php為入口的可以忽略掉該文件


composer.json文件

{

? ? "name": "laravel/laravel",//項目名稱

? ? "description": "The Laravel Framework.",//描述

? ? "keywords": ["framework", "laravel"],//關鍵詞

? ? "license": "MIT",//許可協議

? ? "type": "project",//類型

? ? "require": {

? ? ? ? "php": ">=5.5.9",//PHP版本

? ? ? ? "laravel/framework": "5.2.*"//框架版本

? ? },

? ? "require-dev": {//依賴包

? ? ? ? "fzaninotto/faker": "~1.4",

? ? ? ? "mockery/mockery": "0.9.*",

? ? ? ? "phpunit/phpunit": "~4.0",

? ? ? ? "symfony/css-selector": "2.8.*|3.0.*",

? ? ? ? "symfony/dom-crawler": "2.8.*|3.0.*"

? ? },

? ? "autoload": {//自動加載

? ? ? ? "classmap": [

? ? ? ? ? ? "database"

? ? ? ? ],

? ? ? ? "psr-4": {//一種自動加載的規范

? ? ? ? ? ? "App\\": "app/"

? ? ? ? }

? ? },

? ? "autoload-dev": {//加載測試

? ? ? ? "classmap": [

? ? ? ? ? ? "tests/TestCase.php"

? ? ? ? ]

? ? },

? ? "scripts": {//執行腳本

? ? ? ? "post-root-package-install": [

? ? ? ? ? ? "php -r \"copy('.env.example', '.env');\""

? ? ? ? ],

? ? ? ? "post-create-project-cmd": [

? ? ? ? ? ? "php artisan key:generate"

? ? ? ? ],

? ? ? ? "post-install-cmd": [

? ? ? ? ? ? "php artisan clear-compiled",

? ? ? ? ? ? "php artisan optimize"

? ? ? ? ],

? ? ? ? "post-update-cmd": [

? ? ? ? ? ? "php artisan clear-compiled",

? ? ? ? ? ? "php artisan optimize"

? ? ? ? ]

? ? },

? ? "config": {//配置項

? ? ? ? "preferred-install": "dist"//優先安裝壓縮版

? ? },

? ? "repositories": {//配置composer鏡像

? ? ? ? "packagist": {

? ? ? ? ? ? "type": "composer",

? ? ? ? ? ? "url": "https://packagist.phpcomposer.com"

? ? ? ? }

? ? }

}