Laravel
PHP:7.2
Laravel:5.7
Laravel 是基於 MVC 架構模式打造的框架,當中提供了許多讓開發者更有效率的工具和功能。例如:Artisan 系列的相關指令、Blade template engine、Routing 等等;完整的功能加上現在 PHP 框架的主流是使用 Laravel,因此公司就從善如流的引進使用。
Step 1 - Create Project
建立 Laravel Project 的方式有兩種,一種是安裝 laravel/installer
,再透過 laravel
指令安裝;另一種是直接透過 composer
安裝。
Via Composer
composer create-project --prefer-dist laravel/laravel {project-name}
建立完 Project 以後,可以會看到幾個主要目錄結構和檔案,以下概略地說明每個目錄檔案的作用:
├── app
├── bootstrap
├── config
├── database
├── public
├── resources
├── routes
├── storage
├── tests
├── .env
└── artisan
名稱 | 功用 |
---|---|
app | 存放專案主要的邏輯的目錄,舉凡 Controller、Model、Proivder 都放在此處。 |
bootstrap | 存放 Laravel bootstrap 邏輯。 |
config | 存放 Sessoin 及連線的設定檔。 |
database | 存放 DB migration 相關邏輯。 |
public | 網站進入點。 |
resources | 存放 View、Assets(CSS、JS)、語系。 |
routes | 存放網站 routing 的邏輯 |
storage | 存放 log、Sesson cache等相關資訊。 |
tests | 存放 TestCase。 |
.env | Laravel Project 設定檔,用來紀錄一些常數設定和 APP_KEY 。 |
artisan | Laravel 內建的指令工具,它提供一些快速的指令方便開發者開發。 |
Step 2 - Directory Permissions
Laravel 在執行時,storage
和 boostrap/cache
這兩個目錄可能會由 Web Server 端寫入資訊(Log 、 Sessoin等等)。如果是在自己的開發環境運作時,記得調整這兩個目錄的寫入權限。
Step 2.5 - Check APP_KEY
和 .env
.env
是Laravel Project 設定檔,用來紀錄一些常數設定,且該設定檔並不會進入 git commit。
Laravel Application Key 是 Laravel 運作的必要條件,例如 Session、Cache 的 id 都會透過 APP_KEY
去 hash 產生。.env
的 APP_KEY
沒有填的話就網站就會無法運作。
在使用 Step 1
直接建立新 Project 的情況下,Laravel 安裝的 script 會自動幫你產生 .env
和 APP_KEY
(可參考 composer.json 中的 scripts -> post-root-package-install 及 post-create-project-cmd)。
如果是 clone 舊專案的話,就必須手動自己來了。
# 從 example copy 一份成 .env,並修改設定
cp .env.example .env
# 透過 artisan 產生 APP_KEY
php artisan key:generate
測試
以上都完成以後,就可以使用瀏覽器連連看是否可以正常運作。