目次
1. 安裝 Composer
2. 安裝 Laravel
3. 建立專案資料夾
4. 開啟伺服器
最近開始因為工作的關係開始學習後端的部分
在前輩這邊的專案也開始接觸到 PHP
當然講到 PHP 一定會提到的就是他最著名的框架 Laravel
什麼時候需要使用 PHP 框架?
當專案需要使用 MVC 架構開發時
PHP 框架最主要就是方便開發者更快速地上手 MVC 架構開發
所謂的 MVC 架構簡單來說就是將後端程式的邏輯,拆分成:Model、Controller、View
利用 Controller 將程式邏輯隱藏在背後,各司其職讓架構更整潔
下圖為 Laravel 簡易的 MVC 架構圖
了解使用框架的主要目的後
就來簡單開箱 Laravel 提供哪些工具可以使用吧
- Artisan 指令
Artisan 是 Laravel 自己的命令行工具,方便創建開發所需的 Model、Controller 和其他資源,甚至可以編寫自己的命令來擴展 Artisan - Blade 樣板引擎(View)
模板解析的工具,很多框架都有自己的模板引擎,Laravel 使用的正是其中一項 — — Blade。
Blade 為將 PHP 與 HTML 完整分離的解決工具
編譯時,將相應的模板語法利用正則替換成 PHP 語句,然後儲存成 PHP 檔 - Routing 路由機制
管理網址與頁面的路徑指定
辨別傳入的 request 傳送至對應的 Controller ,回傳指定的 View - Auth 認證
透過 Laravel 預設提供的認證 Controller 快速解決經常用到的驗證需求
像是:
使用者註冊、使用者認證、重置密碼的 e-mail 連結、重置密碼的邏輯 - Eloquent ORM 物件關聯對映(Model)
Laravel 預設的 ORM,將資料庫的欄位映射成物件(Model 模型)
只需使用 PHP 的語法,不必撰寫 SQL 指令就能用物件的方式撰寫讀取欄位資訊與資料庫互動 - Migration 資料庫搬遷
聽起來很像是更換資料庫,但他其實是一種資料庫的版本控制,可以讓團隊在修改資料庫結構的同時,保持彼此的進度一致
通常會和 結構生成器 一起使用,可以簡單的管理資料庫結構
安裝 Composer
在安裝 Laravel 之前必須先安裝 Laravel 依賴管理工具 — — Composer
安裝方式十分簡單
他可以針對各個專案建立,也可以建立在全域,本文以全域安裝為例
專案內建立
- 下載
直接用curl
下載比較快速
cd (專案資料夾的路徑)curl -sS https://getcomposer.org/installer | php
2. 執行
php composer
- 下載
沒有curl
可以用 PHP 指令
php -r "readfile('https://getcomposer.org/installer');" | php
2. 執行
php composer
全域建立
- 下載
這是參考 官方教學 的指令
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
php -r "unlink('composer-setup.php');"
其中有一個很重要的一點:
官方的指令中, php composer-setup.php
後面是沒有接參數的
但也正因此他會安裝錯路徑,導致 composer not found
的情形
因此建議特別指定是安裝在 /usr/local/bin
的路徑,後面的 filename
把檔名更改成 composer
(原檔名為 composer.phar
)
2. 執行
php /usr/local/bin/composer
安裝好之後我們可以檢查一下版本,確認是否有安裝成功
composer -V
安裝 Laravel
安裝好 Composer 我們就可以引入 Laravel/installer
composer global require "laravel/installer"
檢查是否安裝成功
laravel
錯誤訊息
Can’t install Laravel installer via composer
針對這個問題就是根據你的 PHP 版本再下載一次
可以透過 apt-get
或是 homebrew
安裝
我個人的經驗是使用 apt-get
碰到的釘子比較多啦
依照需求安裝你所需你的 PHP 版本(以 7.3 為例)
- apt-get
sudo apt-get install php7.3-zip
2. homebrew
brew install php@7.3
再一次
composer global require laravel/installerlaravel
Laravel is not found
這個問題通常是 $PATH 沒有設定好的問題
vim ~/.zshrc
加入
export PATH="$HOME/.composer/vendor/bin:$PATH"
儲存後跑
source ~/.zshrc
我使用的環境是 zsh
但 bash
環境的解決方法也是一樣的
只需把 PATH 的內容加入 ~/.bashrc
我有遇過的坑是我跑了這段但是我沒有成功
可以檢查一下你是不是真的有 .composer/vendor/bin
的這個檔案
如果沒有就代表一開始的 composer 安裝錯位置
記得加參數
建立專案資料夾
首先切換到我們想存放網站的目錄下,通常會是 Apache 伺服器的網站目錄
假設今天想要建立的專案名稱為 blog
laravel new blog
執行完畢後可以發現專案目錄底下有兩個檔案:
composer.lock
列舉專案中用到的套件及它的版本,確保他人使用的版本一致
不可以手動建立,它會在執行 install 或 update 之後自動產生或更新composer.json
為 json 資料格式的設定檔,提供資訊給 Composer,讓它知道要安裝什麼套件,及該套件的版本
初始化 Composer
composer install
初始化 NPM
npm install
初始化完畢就完成了整者框架的安裝了!
開啟伺服器
完成安裝後,我們可以透過 Artisan 指令 或是用 PHP 指令開啟 Server
看到開發中的畫面,方便 debug
- Artisan 指令
php artisan serve
若要指定埠號
php artisan serve --port=8000
2. PHP
移至 public 資料夾
cd public/
開啟 server
php -S 127.0.0.1:8000 ../server.php
看到這個畫面就代表 Laravel 已成功運行
拍個手讓我知道,這個文章對你們有幫助 ♥(´∀` )人