目錄或文件說明
|– 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"
? ? ? ? }
? ? }
}
轉載于:https://blog.51cto.com/wangzhiqiang/1854303