安裝
認識 Laravel
Laravel 是一個具有表達性、優雅語法的 Web 應用程式框架。Web 框架為您建立應用程式提供結構和起點,讓您可以專注於創造令人驚豔的事物,而我們則處理細節。
Laravel 致力於提供絕佳的開發人員體驗,同時提供強大的功能,例如完善的依賴注入、具表達性的資料庫抽象層、佇列和排程任務、單元和整合測試等等。
無論您是 PHP Web 框架的新手還是擁有多年經驗,Laravel 都是一個可以與您一同成長的框架。我們將協助您踏出成為 Web 開發人員的第一步,或在您將專業知識提升到新的水平時為您提供助力。我們迫不及待想看看您會建立什麼。
為何選擇 Laravel?
在建置 Web 應用程式時,您可以使用各種工具和框架。但是,我們相信 Laravel 是建置現代全端 Web 應用程式的最佳選擇。
漸進式框架
我們喜歡將 Laravel 稱為「漸進式」框架。我們的意思是 Laravel 會與您一同成長。如果您剛開始踏入 Web 開發領域,Laravel 龐大的文件庫、指南和影片教學將幫助您學習訣竅,而不會感到不知所措。
如果您是資深開發人員,Laravel 為您提供強大的工具,用於依賴注入、單元測試、佇列、即時事件等等。Laravel 經過微調,適用於建置專業的 Web 應用程式,並已準備好處理企業工作負載。
可擴展框架
Laravel 具有驚人的可擴展性。 由於 PHP 的可擴展性友好特性以及 Laravel 內建對快速分散式快取系統(如 Redis)的支援,Laravel 的水平擴展非常輕鬆。 實際上,Laravel 應用程式已輕鬆擴展到每月處理數億個請求。
需要極致的擴展性? 像 Laravel Cloud 這樣的平台可讓您以近乎無限的規模執行 Laravel 應用程式。
社群框架
Laravel 結合了 PHP 生態系統中最好的套件,以提供最強大且對開發人員友善的框架。 此外,來自世界各地的數千名才華洋溢的開發人員為 框架做出了貢獻。 誰知道呢,也許您甚至會成為 Laravel 的貢獻者。
建立 Laravel 應用程式
安裝 PHP 和 Laravel 安裝器
在建立您的第一個 Laravel 應用程式之前,請確保您的本機電腦已安裝 PHP、Composer 和 Laravel 安裝器。 此外,您應該安裝 Node 和 NPM 或 Bun,以便您可以編譯應用程式的前端資源。
如果您的本機電腦上未安裝 PHP 和 Composer,則以下命令將在 macOS、Windows 或 Linux 上安裝 PHP、Composer 和 Laravel 安裝器
1/bin/bash -c "$(curl -fsSL https://php.new/install/mac/8.4)"
1# Run as administrator...2Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://php.new/install/windows/8.4'))
1/bin/bash -c "$(curl -fsSL https://php.new/install/linux/8.4)"
執行上述其中一個命令後,您應該重新啟動您的終端機工作階段。 若要在透過 php.new
安裝 PHP、Composer 和 Laravel 安裝器後更新它們,您可以重新執行終端機中的命令。
如果您已經安裝了 PHP 和 Composer,您可以透過 Composer 安裝 Laravel 安裝器
1composer global require laravel/installer
如需功能齊全的圖形化 PHP 安裝和管理體驗,請查看 Laravel Herd。
建立應用程式
安裝 PHP、Composer 和 Laravel 安裝器後,您就可以建立新的 Laravel 應用程式了。 Laravel 安裝器將提示您選擇偏好的測試框架、資料庫和入門套件
1laravel new example-app
建立應用程式後,您可以使用 dev
Composer 指令碼啟動 Laravel 的本機開發伺服器、佇列工作程序和 Vite 開發伺服器
1cd example-app2npm install && npm run build3composer run dev
啟動開發伺服器後,您的應用程式將可在 Web 瀏覽器中透過 https://127.0.0.1:8000 存取。 接下來,您已準備好開始採取下一步進入 Laravel 生態系統。 當然,您可能也想設定資料庫。
如果您希望在開發 Laravel 應用程式時搶先一步,請考慮使用我們的入門套件之一。 Laravel 的入門套件為您的新 Laravel 應用程式提供後端和前端驗證基架。
初始設定
Laravel 框架的所有設定檔都儲存在 config
目錄中。 每個選項都有文件說明,因此請隨意瀏覽這些檔案並熟悉可用的選項。
Laravel 幾乎不需要額外的開箱即用設定。 您可以自由開始開發! 但是,您可能希望檢閱 config/app.php
檔案及其文件。 它包含多個選項,例如 url
和 locale
,您可能希望根據您的應用程式變更這些選項。
基於環境的設定
由於 Laravel 的許多設定選項值可能會因您的應用程式是在本機電腦上還是在生產 Web 伺服器上執行而異,因此許多重要的設定值都是使用應用程式根目錄中存在的 .env
檔案定義的。
您的 .env
檔案不應提交到應用程式的原始碼控制,因為每個使用您應用程式的開發人員/伺服器可能需要不同的環境設定。 此外,如果入侵者存取您的原始碼控制儲存庫,這將構成安全風險,因為任何敏感的憑證都會暴露。
如需有關 .env
檔案和基於環境的設定的更多資訊,請查看完整的設定文件。
資料庫與資料庫遷移
現在您已建立 Laravel 應用程式,您可能想要將一些資料儲存在資料庫中。 預設情況下,您應用程式的 .env
設定檔指定 Laravel 將與 SQLite 資料庫互動。
在建立應用程式期間,Laravel 為您建立了一個 database/database.sqlite
檔案,並執行了必要的資料庫遷移來建立應用程式的資料庫表格。
如果您偏好使用另一個資料庫驅動程式(例如 MySQL 或 PostgreSQL),您可以更新 .env
設定檔以使用適當的資料庫。 例如,如果您想要使用 MySQL,請更新 .env
設定檔的 DB_*
變數,如下所示
1DB_CONNECTION=mysql2DB_HOST=127.0.0.13DB_PORT=33064DB_DATABASE=laravel5DB_USERNAME=root6DB_PASSWORD=
如果您選擇使用 SQLite 以外的資料庫,您將需要建立資料庫並執行應用程式的資料庫遷移
1php artisan migrate
如果您在 macOS 或 Windows 上開發,並且需要在本機安裝 MySQL、PostgreSQL 或 Redis,請考慮使用 Herd Pro。
目錄設定
Laravel 應始終從為您的 Web 伺服器設定的「Web 目錄」的根目錄中提供服務。 您不應嘗試從「Web 目錄」的子目錄中提供 Laravel 應用程式。 嘗試這樣做可能會暴露應用程式中存在的敏感檔案。
使用 Herd 進行本機安裝
Laravel Herd 是適用於 macOS 和 Windows 的極速原生 Laravel 和 PHP 開發環境。 Herd 包含開始 Laravel 開發所需的一切,包括 PHP 和 Nginx。
安裝 Herd 後,您就可以開始使用 Laravel 進行開發了。 Herd 包含 php
、composer
、laravel
、expose
、node
、npm
和 nvm
的命令列工具。
Herd Pro 使用其他強大功能增強了 Herd,例如建立和管理本機 MySQL、Postgres 和 Redis 資料庫,以及本機郵件檢視和記錄監控的功能。
macOS 上的 Herd
如果您在 macOS 上開發,您可以從 Herd 網站下載 Herd 安裝程式。 安裝程式會自動下載最新版本的 PHP,並設定您的 Mac 以始終在背景執行 Nginx。
macOS 版 Herd 使用 dnsmasq 來支援「停放」目錄。 停放目錄中的任何 Laravel 應用程式都會自動由 Herd 提供服務。 預設情況下,Herd 會在 ~/Herd
建立一個停放目錄,您可以使用其目錄名稱在 .test
網域上存取此目錄中的任何 Laravel 應用程式。
安裝 Herd 後,建立新 Laravel 應用程式的最快方法是使用 Laravel CLI,它與 Herd 捆綁在一起
1cd ~/Herd2laravel new my-app3cd my-app4herd open
當然,您始終可以透過 Herd 的 UI 管理您的停放目錄和其他 PHP 設定,您可以從系統匣中的 Herd 選單開啟 UI。
您可以查看 Herd 文件來深入瞭解 Herd。
Windows 上的 Herd
您可以在 Herd 網站上下載 Windows 版 Herd 安裝程式。 安裝完成後,您可以啟動 Herd 以完成入門程序並首次存取 Herd UI。
可以透過左鍵按一下 Herd 的系統匣圖示來存取 Herd UI。 右鍵按一下會開啟快速選單,其中包含存取您每天需要的所有工具的權限。
在安裝期間,Herd 會在您的主目錄中的 %USERPROFILE%\Herd
建立一個「停放」目錄。 停放目錄中的任何 Laravel 應用程式都會自動由 Herd 提供服務,您可以使用其目錄名稱在 .test
網域上存取此目錄中的任何 Laravel 應用程式。
安裝 Herd 後,建立新 Laravel 應用程式的最快方法是使用 Laravel CLI,它與 Herd 捆綁在一起。 若要開始使用,請開啟 Powershell 並執行下列命令
1cd ~\Herd2laravel new my-app3cd my-app4herd open
您可以查看 Windows 版 Herd 文件來深入瞭解 Herd。
使用 Sail 進行 Docker 安裝
我們希望盡可能輕鬆地開始使用 Laravel,無論您偏好的作業系統為何。 因此,有多種選項可用於在本機電腦上開發和執行 Laravel 應用程式。 雖然您可能希望稍後再探索這些選項,但 Laravel 提供了 Sail,這是一個使用 Docker 執行 Laravel 應用程式的內建解決方案。
Docker 是一種用於在小型、輕量型「容器」中執行應用程式和服務的工具,這些容器不會干擾本機電腦上安裝的軟體或設定。 這表示您不必擔心在本機電腦上設定或設定複雜的開發工具,例如 Web 伺服器和資料庫。 若要開始使用,您只需要安裝 Docker Desktop。
Laravel Sail 是一個輕量型命令列介面,用於與 Laravel 的預設 Docker 設定互動。 Sail 為使用 PHP、MySQL 和 Redis 建置 Laravel 應用程式提供了一個絕佳的起點,而無需事先具備 Docker 經驗。
已經是 Docker 專家? 別擔心! Sail 的所有內容都可以使用 Laravel 隨附的 docker-compose.yml
檔案進行自訂。
macOS 上的 Sail
如果您在 Mac 上開發並且已經安裝 Docker Desktop,您可以使用簡單的終端機命令來建立新的 Laravel 應用程式。 例如,若要在名為「example-app」的目錄中建立新的 Laravel 應用程式,您可以執行下列終端機命令
1curl -s "https://laravel.build/example-app" | bash
當然,您可以將此 URL 中的「example-app」變更為您喜歡的任何名稱 - 只要確保應用程式名稱僅包含字母數字字元、破折號和底線即可。 Laravel 應用程式的目錄將在您從中執行命令的目錄中建立。
Sail 安裝可能需要幾分鐘時間,因為 Sail 的應用程式容器是在您的本機電腦上建置的。
建立應用程式後,您可以導覽至應用程式目錄並啟動 Laravel Sail。 Laravel Sail 提供了一個簡單的命令列介面,用於與 Laravel 的預設 Docker 設定互動
1cd example-app2 3./vendor/bin/sail up
啟動應用程式的 Docker 容器後,您應該執行應用程式的資料庫遷移
1./vendor/bin/sail artisan migrate
最後,您可以在 Web 瀏覽器中透過 https://127.0.0.1 存取應用程式。
若要繼續瞭解有關 Laravel Sail 的更多資訊,請檢閱其完整文件。
Windows 上的 Sail
在您的 Windows 電腦上建立新的 Laravel 應用程式之前,請確保安裝 Docker Desktop。 接下來,您應該確保已安裝並啟用適用於 Linux 2 的 Windows 子系統 (WSL2)。 WSL 可讓您在本機 Windows 10 上原生執行 Linux 二進位可執行檔。 有關如何安裝和啟用 WSL2 的資訊,請參閱 Microsoft 的開發人員環境文件。
安裝並啟用 WSL2 後,您應確保 Docker Desktop 已設定為使用 WSL2 後端。
接下來,您已準備好建立您的第一個 Laravel 應用程式。 啟動 Windows 終端機,並為您的 WSL2 Linux 作業系統開始新的終端機工作階段。 接下來,您可以使用簡單的終端機命令來建立新的 Laravel 應用程式。 例如,若要在名為「example-app」的目錄中建立新的 Laravel 應用程式,您可以執行下列終端機命令
1curl -s https://laravel.build/example-app | bash
當然,您可以將此 URL 中的「example-app」變更為您喜歡的任何名稱 - 只要確保應用程式名稱僅包含字母數字字元、破折號和底線即可。 Laravel 應用程式的目錄將在您從中執行命令的目錄中建立。
Sail 安裝可能需要幾分鐘時間,因為 Sail 的應用程式容器是在您的本機電腦上建置的。
建立應用程式後,您可以導覽至應用程式目錄並啟動 Laravel Sail。 Laravel Sail 提供了一個簡單的命令列介面,用於與 Laravel 的預設 Docker 設定互動
1cd example-app2 3./vendor/bin/sail up
啟動應用程式的 Docker 容器後,您應該執行應用程式的資料庫遷移
1./vendor/bin/sail artisan migrate
最後,您可以在 Web 瀏覽器中透過 https://127.0.0.1 存取應用程式。
若要繼續瞭解有關 Laravel Sail 的更多資訊,請檢閱其完整文件。
在 WSL2 中開發
當然,您需要能夠修改在 WSL2 安裝中建立的 Laravel 應用程式檔案。 為了實現此目的,我們建議使用 Microsoft 的 Visual Studio Code 編輯器及其適用於遠端開發的第一方擴充功能。
安裝這些工具後,您可以透過使用 Windows 終端機從應用程式的根目錄執行 code .
命令來開啟任何 Laravel 應用程式。
Linux 上的 Sail
如果您在 Linux 上開發並且已經安裝 Docker Compose,您可以使用簡單的終端機命令來建立新的 Laravel 應用程式。
首先,如果您使用的是適用於 Linux 的 Docker Desktop,則應執行下列命令。 如果您未使用適用於 Linux 的 Docker Desktop,則可以跳過此步驟
1docker context use default
然後,若要在名為「example-app」的目錄中建立新的 Laravel 應用程式,您可以執行下列終端機命令
1curl -s https://laravel.build/example-app | bash
當然,您可以將此 URL 中的「example-app」變更為您喜歡的任何名稱 - 只要確保應用程式名稱僅包含字母數字字元、破折號和底線即可。 Laravel 應用程式的目錄將在您從中執行命令的目錄中建立。
Sail 安裝可能需要幾分鐘時間,因為 Sail 的應用程式容器是在您的本機電腦上建置的。
建立應用程式後,您可以導覽至應用程式目錄並啟動 Laravel Sail。 Laravel Sail 提供了一個簡單的命令列介面,用於與 Laravel 的預設 Docker 設定互動
1cd example-app2 3./vendor/bin/sail up
啟動應用程式的 Docker 容器後,您應該執行應用程式的資料庫遷移
1./vendor/bin/sail artisan migrate
最後,您可以在 Web 瀏覽器中透過 https://127.0.0.1 存取應用程式。
若要繼續瞭解有關 Laravel Sail 的更多資訊,請檢閱其完整文件。
選擇您的 Sail 服務
透過 Sail 建立新的 Laravel 應用程式時,您可以使用 with
查詢字串變數來選擇應在新應用程式的 docker-compose.yml
檔案中設定哪些服務。 可用的服務包括 mysql
、pgsql
、mariadb
、redis
、valkey
、memcached
、meilisearch
、typesense
、minio
、selenium
和 mailpit
1curl -s "https://laravel.build/example-app?with=mysql,redis" | bash
如果您未指定要設定哪些服務,則將設定 mysql
、redis
、meilisearch
、mailpit
和 selenium
的預設堆疊。
您可以指示 Sail 安裝預設的 Devcontainer,方法是將 devcontainer
參數新增至 URL
1curl -s "https://laravel.build/example-app?with=mysql,redis&devcontainer" | bash
IDE 支援
您可以自由使用任何您想要的程式碼編輯器來開發 Laravel 應用程式;但是,PhpStorm 為 Laravel 及其生態系統提供廣泛的支援,包括 Laravel Pint。
此外,社群維護的 Laravel Idea PhpStorm 外掛程式提供了各種有用的 IDE 擴充功能,包括程式碼產生、Eloquent 語法完成、驗證規則完成等等。
如果您在 Visual Studio Code (VS Code) 中開發,則官方 Laravel VS Code 擴充功能現在已推出。 此擴充功能將 Laravel 專用工具直接帶入您的 VS Code 環境,從而提高生產力。
下一步
現在您已建立 Laravel 應用程式,您可能想知道接下來要學習什麼。 首先,我們強烈建議您閱讀以下文件,以熟悉 Laravel 的運作方式
您想要如何使用 Laravel 也將決定您旅程的下一步。 使用 Laravel 的方法有很多種,我們將在下面探討框架的兩個主要用例。
Laravel:全端框架
Laravel 可以作為全端框架。 「全端」框架是指您將使用 Laravel 將請求路由到您的應用程式,並透過 Blade 模板或單頁應用程式混合技術(如 Inertia)呈現您的前端。 這是使用 Laravel 框架最常見的方式,而且我們認為這是使用 Laravel 最有效率的方式。
如果這是您計劃使用 Laravel 的方式,您可能需要查看我們關於前端開發、路由、視圖或 Eloquent ORM 的文件。 此外,您可能有興趣瞭解社群套件,例如 Livewire 和 Inertia。 這些套件可讓您將 Laravel 用作全端框架,同時享受單頁 JavaScript 應用程式提供的許多 UI 優勢。
如果您將 Laravel 用作全端框架,我們也強烈建議您學習如何使用 Vite 編譯應用程式的 CSS 和 JavaScript。
如果您想在建置應用程式時搶先一步,請查看我們的官方應用程式入門套件之一。
Laravel:API 後端
Laravel 也可以作為 JavaScript 單頁應用程式或行動應用程式的 API 後端。 例如,您可以使用 Laravel 作為 Next.js 應用程式的 API 後端。 在這種情況下,您可以使用 Laravel 為您的應用程式提供身份驗證和資料儲存/擷取,同時也利用 Laravel 強大的服務,例如佇列、電子郵件、通知等等。
如果這是您計劃使用 Laravel 的方式,您可能需要查看我們關於路由、Laravel Sanctum 和 Eloquent ORM 的文件。