# Laravel ## Laravel 簡介 ### 後端框架 Laravel是一套基於[MVC架構](https://hackmd.io/@SiriusLab/Sk8EZlKPJg)的網頁應用程式框架, 其理念是讓開發過程愉悅且富有創造性。 Laravel所涵蓋的技術領域廣大, 在其運作過程中包含許多知識應用, 以一般電商網站為例: 當使用者(Client)在瀏覽器(Browser)連線(HTTPS)到網站時, 瀏覽器經過域名系統(DNS)對輸入的網域(Domain)進行解析以獲取IP位址, 導向'Laravel/public/index.php'後便開始啟動相關的函數(Function), 然後路由(Route)決定瀏覽器向使用者呈現的首頁視圖(View) `Route::get('/', function () { return view('index'); });` 而使用者在網站中各種需要與後端交互的行為皆由控制器(Controller)所管理。 任何需要與資料庫(Database)交互的動作皆透過控制器調用模型(Model)進行處理。 ## Laravel 安裝步驟 ### 前置條件 *作業系統 Windows 11 使用環境 XAMPP* ### 安裝步驟 1. 在Windows中安裝 [Composer安裝工具](https://getcomposer.org/Composer-Setup.exe)。 2. 在Terminal中執行 `cd /xampp/htdocs` 3. 在Terminal中執行 `composer create-project laravel/laravel:^11.0 (專案名稱)` 4. 出現 "Application key set successfully." 時,代表安裝完成。 #### 備註 *指令 `cd` 擁有 change directory(改變目錄) 的意義。 htdocs擁有 host documents(主機文件) 的意義。 `laravel/laravel:^11.0` 的 `^` 代表指定的版本是11的最新版,不會安裝到10.X或12.X的版本。* ## Laravel 系統 ### Composer 是什麼? Composer是PHP的套件管理系統,它提供用於管理PHP軟體與依賴庫關係的標準格式。簡單地說,就是負責安裝套件。 `require` 向composer.json添加一個依賴庫,並且安裝它 `install` 從composer.json安裝依賴庫,通常在下載一個PHP專案的所有依賴時使用 `update` 根據composer.json中允許的版本範圍更新依賴庫 `remove` 刪除一個依賴庫,並將其從composer.json中移除 `self-update` 更新compsoer自身 ### Artisan 是什麼? Artisan是Laravel的一個CLI(指令列介面)的名稱,它本身除了負責產生 Model 與 Controller 之外,也允許開發者建立自訂的指令。 啟動Laravel測試伺服器 `php artisan serve` **此時若關閉Terminal相當於關閉伺服器!* 查詢Artisan指令 `php artisan list` 新增controller `php artisan make:controller (controller名稱)` ex.`php artisan make:controller (AboutController)` ### Blade 是什麼? 簡單地說,Blade 就是 Laravel 所提供的樣版引擎。若網頁有重複的地方,可以使用 blade 的 @extends,將來要修改時就不用每個網頁都修改,只要修改一處即可。 ### Namespace 是什麼? 為了解決套件衝突問題,PHP 5.3 提出了 "Namespace",套件可以有自己的 Namespace,我們的專案可以有自己的 Namespace,只要在 Namespace 不相衝突的情況下,"class" 名稱相衝突是允許的。PHP 必須搭配 Namespace,才可以避免 class 名稱與套件的 class 名稱發生衝突的問題。 ## XAMPP下的Laravel ### 伺服器配置 在XAMPP的環境裡,Apache的預設埠(Port)是80(HTTP),443(HTTPS),當我們將Laravel專案安裝於XAMPP/htdocs後,必須設定路徑才能夠在使用URL時將網頁導向自己的Laravel專案。 在XAMPP Control Panel的Apache Config選擇httpd.conf,然後透過 Ctrl+F 搜尋 `DocumentRoot` 找到 `DocumentRoot "C:/xampp/htdocs"` `<Directory "C:/xampp/htdocs">` 將這兩行的路徑改為 `DocumentRoot "C:/xampp/htdocs/(自己的專案目錄)/public"` `<Directory "C:/xampp/htdocs/(自己的專案目錄)/public">` 這裡的 `public` 代表的是網站的起點、程式的入口,所有公開的資料都會放在這個資料夾,例如:首頁、文字、圖片等。 可依需求更動配置的檔案包含但不僅限於: - /.env - /config/app.php - /config/database.php
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up