① laravel框架各文件作用是什麼之間什麼關系
文件的文件夾
作用
/app/config/
配置應用程序的運行時規則、 資料庫、 session等等。包含大量的用來更改框架的各個方面的配置文件。大部分的配置文件中返回的選項關聯PHP數組。
/app/config/app.php
各種應用程序級設置,即時區、 區域設置(語言環境)、 調試模式和獨特的加密密鑰。
/app/config/auth.php
控制在應用程序中如何進行身份驗證,即身份驗證驅動程序。
/app/config/cache.php
如果應用程序利用緩存來加快響應時間,要在此配置該功能。
/app/config/compile.php
在此處可以指定一些額外類,去包含由『artisan optimize』命令聲稱的編譯文件。這些應該是被包括在基本上每個請求到應用程序中的類。
/app/config/database.php
包含資料庫的相關配置信息,即默認資料庫引擎和連接信息。
/app/config/mail.php
為電子郵件發件引擎的配置文件,即 SMTP 伺服器,From:標頭
/app/config/session.php
控制Laravel怎樣管理用戶sessions,即session driver, session lifetime。
/app/config/view.php
模板系統的雜項配置。
/app/controllers
包含用於提供基本的邏輯、 數據模型交互以及載入應用程序的視圖文件的控制器類。
/app/database/migrations/
包含一些 PHP 類,允許 Laravel更新當前資料庫的架構並同時保持所有版本的資料庫的同步。遷移文件是使用Artisan工具生成的。
/app/database/seeds/
包含允許Artisan工具用關系數據來填充資料庫表的 PHP 文件。
/app/lang/
PHP 文件,其中包含使應用程序易於本地化的字元串的數組。默認情況下目錄包含英語語言的分頁和表單驗證的語言行。
/app/models/
模型是代表應用程序的信息(數據)和操作數據的規則的一些類。在大多數情況下,資料庫中的每個表將對應應用中的一個模型。應用程序業務邏輯的大部分將集中在模型中。
/app/start/
包含與Artisan工具以及全球和本地上下文相關的自定義設置。
/app/storage/
該目錄存儲Laravel各種服務的臨時文件,如session, cache, compiled view templates。這個目錄在web伺服器上必須是可以寫入的。該目錄由Laravel維護,我們可以不關心。
/app/tests/
該文件夾給你提供了一個方便的位置,用來做單元測試。如果你使用PHPUnit,你可以使用Artisan工具一次執行所有的測試。
/app/views/
該文件夾包含了控制器或者路由使用的HTML模版。請注意,這個文件夾下你只能放置模版文件。其他的靜態資源文件如css, javascript和images文件應該放在/public文件夾下。
/app/routes.php
這是您的應用程序的路由文件,其中包含路由規則,告訴 Laravel 如何將傳入的請求連接到路由處理的閉包函數、 控制器和操作。該文件還包含幾個事件聲明,包括錯誤頁的,可以用於定義視圖的composers。
/app/filters.php
此文件包含各種應用程序和路由篩選方法,用來改變您的應用程序的結果。Laravel 具有訪問控制和 XSS 保護的一些預定義篩選器。
花了很多心思在建立和命名文件夾上,得到的就是一個具有良好的文件系統的應用程序。
在這里你得到了什麼:MVC
② 如何高效地學習 Laravel 框架
推薦學習路徑
1. 框架的使用知識學習
基於以上的思想,我創建了 《Laravel 實戰課程》,計劃中有三本(也有可能更多),分別是:
第一本 —— 《Laravel 入門教程 - 從零到部署上線》
第二本 —— 《Laravel 進階課程 - 從零開始構建論壇系統》
第三本 —— 《Laravel 高級課程 - 構架 API 伺服器》
第一本書教授如何使用 Laravel 一步一步構建一個類似新浪微博的應用,書中很多技術話題會被一帶而過,這是有意而為之的,我們希望讓讀者保持對編碼線索的專注,不被篇幅悠長的名詞解釋分心。通過閱讀本教程,你將學到如 HTML、CSS、JavaScript、PHP 和 Laravel 等 Web 開發相關的基礎知識。不僅如此,本書還會對這些基礎知識點進行延伸擴展,為你講解一些在 Web 開發中更為專業、實用的技能,如 Git 工作流、Laravel Mix 前端工作流、Bootstrap 框架基本使用等。這些知識將為你未來的編程開發奠定下堅實的基礎。
第二本以構建論壇項目 LaraBBS 為線索,展開對 Laravel 框架的全面學習。編碼規范遵循 Laravel 項目開發規范 ,應用程序架構思路貼近 Laravel 框架的設計哲學。在論壇系統的構建中,我們將學到多角色用戶許可權系統、管理員後台、注冊驗證碼、圖片上傳、圖片裁剪,XSS 防禦、自定義命令行、自定義中間件、任務調度、隊列系統的使用、應用緩存、Redis、模型事件監控、表單驗證、消息通知、郵件通知、模型修改器等知識。在本課程的學習中,你不僅能學到使用 Laravel 開發一個論壇項目,還能學到安全優先、高擴展性的大型項目架構經驗。
第三本將以構建 API 伺服器為目標,來展開。目前本課程正在緊張撰寫中,敬請期待。
2. 框架的底層實現學習
學完了以上三本書,你將擁有一定的項目開發經驗,對框架的功能使用也會有一個比較全面的系統性理解。這時候,會是學習『底層實現』的好時機。
底層實現的知識學習,可以從文檔開始,打開 Laravel 的文檔中心 ——d.laravel-china.org,找到最新版本的 Laravel 文檔,然後仔細閱讀 2、3 遍。因為有了上面的項目經驗,此時的文檔閱讀啃起來會輕松多了。
閱讀文檔後,可以嘗試看下 Laravel 底層的源碼,看看這些框架的功能都是怎麼實現的。
學習過程中可以適當做筆記,例如:
zhangbao同學的Laravel 文檔閱讀筆記
leoyang同學的Laravel 源碼分析筆記
錯誤的學習方法
一上來就開始啃文檔d.laravel-china.org。
如果你是新手,有太多的新概念你需要學習,你會發現學習起來非常艱難,甚至懷疑文檔是不是寫的太爛了(社區里經常出現這種抱怨)。
事實上,不是文檔寫的太爛,而是你把文檔用錯了。文檔的『目的』是快速查閱,一份優秀文檔的標準是語言簡練,釋義,這個 Laravel 的文檔做的很棒。但是,文檔並不適合做入門學習使用,上面我們已經講過,原因是信息量太大。
尋找網路上零散的課程進行學習。
如果你想學習單個概念,這些零散的小課程會很方便。但是,如果是想以閱讀大量課程來達到系統性學習的目的,你將會很失望。很多時候你會感覺 —— 你好像學了很多,學了很久,以為自己學會了,但是心裡還是沒底氣。
你需要的是通過項目,完整的項目,將所有的知識串起來去記憶。你的作品,清清楚楚擺在面前,看著你一步步構建出來的一套系統,自信心也會有所增加。
一開始就學習高級話題,如服務容器、服務提供器、Facades、Contracts、Repository 等
很多時候你會發現這些話題晦澀難懂,很難學習。並且即使你毅力比較好,死記硬背,很快也會忘記,學習效率非常低下。然後最重要的,學會這些概念,並無法使你掌握構建一個完整項目的能力。
③ 如何安裝Laravel框架
通過 Laravel 安裝器安裝
1
先下載 Laravel 安裝器 PHAR 文件。為了方便起見,將該文件重命名為 laravel 並移動至 /usr/local/bin目錄。完成後,只需在你指定的目錄下輸入簡單的 laravel new 命令即可創建一個全新的Laravel安裝。例如,laravel new blog 將創建一個名為 blog 的目錄,該目錄中包含了一份全新的Laravel安裝以及所需的依賴項。這種安裝方法比通過 Composer 安裝要快許多
通過 Composer create-project 命令安裝Lar
1
還可以通過在命令行執行 Composer create-project 命令來安裝Laravel:
composer create-project laravel/laravel --prefer-dist
通過下載Laravel包安裝
1
Composer安裝完成後,下載最新版Laravel框架,把它解壓縮到你伺服器上的一個目錄中。然後在Laravel應用的根目錄下運行命令行命令 php composer.phar install (或者 composer install )來安裝所有的框架依賴包。在此過程中,為了成功完成安裝,你需要在伺服器上安裝好Git。
當Laravel框架安裝好後,你可以使用命令行命令 php composer.phar update 來更新框架。
END
伺服器環境要求
1
Laravel框架有一些系統要求:
PHP最低版本: 5.3.7MCrypt PHP擴展
從PHP 5.5版本開始,針對某些操作系統的安裝包需要你自己手工安裝PHP的jsON擴展模塊。如果你使用的是Ubuntu,可以通過, apt-get install php5-json 命令直接安裝。
配置
Laravel框架幾乎無需配置就可立即使用。你可以自由地快速開始開發。然而,你也許希望先查看下app/config/app.php 配置文件和相關的文檔說明。它包含了一些你也許要修改的配置選項,如 時區 和 地區 等。
許可權設置
Laravel框架有一個目錄需要額外設置許可權: 需要為 app/storage 目錄下的文件設置寫許可權。
路徑設置
一些框架目錄路徑是可以設置的。如果需要改變這些目錄的位置,可以查看 bootstrap/paths.php 文件中的設置。
Laravel框架通過設置 public/.htaccess 文件去除鏈接中的index.php。 如果你你的伺服器使用的是Apache,請開啟mod_rewrite 模塊。