安装
认识 Laravel
Laravel 是一个语法富有表现力、设计优雅的 Web 应用框架。Web 框架会为你的应用提供结构和起点,让你专注于创造出色的产品,而繁琐细节则由框架来操心。
Laravel 致力于提供出色的开发体验,同时带来强大的能力,例如完善的依赖注入、富有表现力的数据库抽象层、队列与定时任务、单元测试与集成测试等。
无论你是刚接触 PHP Web 框架,还是已有多年经验,Laravel 都能陪你一起成长。我们会帮你迈出成为 Web 开发者的第一步,也会在你进阶时提供助力。我们迫不及待想看到你的作品。
INFO
刚接触 Laravel?可通过 Laravel Bootcamp 动手体验框架,并跟随我们构建第一个 Laravel 应用。
为什么选择 Laravel?
构建 Web 应用时可选的工具和框架很多。但我们相信,Laravel 是构建现代全栈 Web 应用的最佳选择。
渐进式框架
我们喜欢把 Laravel 称为「渐进式」框架,意思是它会随着你的水平一起成长。如果你刚开始学习 Web 开发,Laravel 丰富的文档、指南和视频教程能帮你循序渐进地入门,而不会一下子被淹没。
可扩展的框架
Laravel 具备出色的扩展能力。得益于 PHP 友好的扩展特性,以及 Laravel 对 Redis 等高速分布式缓存的内置支持,横向扩展非常轻松。事实上,已有 Laravel 应用轻松扩展到每月处理数亿次请求。
需要极致扩展?Laravel Vapor 等平台可让你在 AWS 最新的无服务器技术上以近乎无限的规模运行 Laravel 应用。
社区驱动的框架
Laravel 汇聚了 PHP 生态中优秀的包,提供稳健且对开发者友好的框架体验。此外,全球成千上万的优秀开发者已为框架做出贡献。说不定,你也会成为 Laravel 贡献者之一。
创建 Laravel 应用
安装 PHP 与 Laravel 安装器
创建第一个 Laravel 应用之前,请确保本机已安装 PHP、Composer 以及 Laravel 安装器。此外,还应安装 Node 与 NPM 或 Bun,以便编译应用的前端资源。
如果本机还没有 PHP 和 Composer,可用下列命令在 macOS、Windows 或 Linux 上安装 PHP、Composer 和 Laravel 安装器:
/bin/bash -c "$(curl -fsSL https://php.new/install/mac/8.4)"# Run as administrator...
Set-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'))/bin/bash -c "$(curl -fsSL https://php.new/install/linux/8.4)"执行以上任一命令后,请重新打开终端会话。若之后要通过 php.new 更新 PHP、Composer 和 Laravel 安装器,在终端中再次运行该命令即可。
如果已经安装了 PHP 和 Composer,可通过 Composer 安装 Laravel 安装器:
composer global require laravel/installerINFO
若需要功能完整、带图形界面的 PHP 安装与管理体验,请参阅 Laravel Herd。
创建应用
安装好 PHP、Composer 和 Laravel 安装器后,就可以创建新的 Laravel 应用了。安装器会提示你选择偏好的测试框架、数据库和起步套件:
laravel new example-app应用创建完成后,可用 Composer 的 dev 脚本启动 Laravel 本地开发服务器、队列 worker 以及 Vite 开发服务器:
cd example-app
npm install && npm run build
composer run dev开发服务器启动后,可在浏览器访问 http://localhost:8000。接下来可以继续探索 Laravel 生态。当然,你也可能想先配置数据库。
INFO
如果希望开发时有个更好的起点,可考虑使用我们的起步套件。Laravel 起步套件会为新应用提供前后端认证脚手架。
初始配置
Laravel 框架的所有配置文件都存放在 config 目录中。每个选项都有说明,不妨浏览这些文件,熟悉可用配置。
开箱即用时,Laravel 几乎不需要额外配置,你可以直接开始开发。不过,建议先看看 config/app.php 及其文档,其中包含 url、locale 等你可能想按应用需求调整的选项。
基于环境的配置
许多配置项在本地与生产环境中的值可能不同,因此不少重要配置写在应用根目录的 .env 文件中。
.env 不应提交到版本控制:不同开发者或服务器可能需要不同环境配置;若仓库被入侵,敏感凭据也会随之暴露。
INFO
关于 .env 与基于环境的配置,详见完整的配置文档。
数据库与迁移
应用创建好后,通常需要把数据存进数据库。默认情况下,.env 会配置 Laravel 使用 SQLite。
创建应用时,Laravel 已为你生成 database/database.sqlite,并运行了必要迁移以创建数据表。
若更想使用 MySQL 或 PostgreSQL 等驱动,可修改 .env。例如使用 MySQL 时,可这样配置 DB_* 变量:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=若未使用 SQLite,需要自行创建数据库,并运行应用的数据库迁移:
php artisan migrate目录配置
Laravel 应始终从 Web 服务器配置的「Web 目录」根路径对外提供服务,不要尝试从该目录的子目录提供 Laravel 应用,否则可能暴露应用中的敏感文件。
使用 Herd 进行本地安装
Laravel Herd 是面向 macOS 与 Windows 的高速原生 Laravel / PHP 开发环境,内置开始 Laravel 开发所需的一切,包括 PHP 和 Nginx。
安装 Herd 后即可开始用 Laravel 开发。Herd 提供 php、composer、laravel、expose、node、npm、nvm 等命令行工具。
INFO
Herd Pro 在 Herd 基础上增加了更多能力,例如创建和管理本地 MySQL、Postgres、Redis,以及本地邮件查看与日志监控。
在 macOS 上使用 Herd
macOS 版 Herd 使用 dnsmasq 支持「停靠」目录。停靠目录中的任意 Laravel 应用都会由 Herd 自动提供服务。默认会在 ~/Herd 创建停靠目录,你可通过目录名在 .test 域下访问其中的 Laravel 应用。
安装 Herd 后,最快的方式是使用随 Herd 附带的 Laravel CLI 创建应用:
cd ~/Herd
laravel new my-app
cd my-app
herd open当然,也可以通过系统托盘中的 Herd 菜单打开 UI,管理停靠目录及其他 PHP 设置。
更多信息见 Herd 文档。
在 Windows 上使用 Herd
可在 Herd 官网下载 Windows 安装包。安装完成后启动 Herd,完成引导流程并首次进入 Herd UI。
左键单击系统托盘中的 Herd 图标可打开 UI;右键则打开快捷菜单,可访问日常所需工具。
安装过程中,Herd 会在用户主目录下创建停靠目录 %USERPROFILE%\Herd。停靠目录中的任意 Laravel 应用都会由 Herd 自动提供服务,你可通过目录名在 .test 域下访问其中的 Laravel 应用。
安装后,最快的方式是使用随 Herd 附带的 Laravel CLI。打开 PowerShell 并运行:
cd ~\Herd
laravel new my-app
cd my-app
herd open更多信息见 Windows 版 Herd 文档。
使用 Sail 进行 Docker 安装
无论你偏好哪种操作系统,我们都希望尽可能轻松地开始使用 Laravel。因此本机开发与运行 Laravel 应用有多种选择。虽然你可以稍后再探索这些方案,但 Laravel 提供了内置的 Sail,可用 Docker 运行应用。
Docker 可在轻量「容器」中运行应用与服务,且不会干扰本机已安装的软件或配置。因此你无需在本机配置复杂的 Web 服务器、数据库等开发工具。开始时只需安装 Docker Desktop。
Laravel Sail 是用于与 Laravel 默认 Docker 配置交互的轻量命令行接口。即使没有 Docker 经验,Sail 也能帮你以 PHP、MySQL 与 Redis 快速搭建 Laravel 应用。
INFO
已经是 Docker 专家?别担心!Sail 的一切都可通过 Laravel 自带的 docker-compose.yml 自定义。
在 macOS 上使用 Sail
若在 Mac 上开发且已安装 Docker Desktop,可用一条简单的终端命令创建新的 Laravel 应用。例如,要在名为「example-app」的目录中创建应用,可在终端运行:
curl -s "https://laravel.build/example-app" | bash当然,你可将 URL 中的「example-app」改成任意名称——只需确保应用名仅包含字母数字、短横线与下划线。Laravel 应用目录会创建在你执行该命令时所在的目录下。
Sail 安装可能需要几分钟,期间会在本机构建 Sail 的应用容器。
应用创建完成后,可进入应用目录并启动 Laravel Sail。Sail 提供了用于与 Laravel 默认 Docker 配置交互的简洁命令行接口:
cd example-app
./vendor/bin/sail up应用的 Docker 容器启动后,应运行应用的数据库迁移:
./vendor/bin/sail artisan migrate最后,可在浏览器访问:http://localhost。
INFO
若要继续了解 Laravel Sail,请参阅其完整文档。
在 Windows 上使用 Sail
在 Windows 上创建新的 Laravel 应用前,请先安装 Docker Desktop。接着确保已安装并启用 Windows Subsystem for Linux 2(WSL2)。WSL 可让你在 Windows 10 上原生运行 Linux 可执行文件。安装与启用 WSL2 的说明见 Microsoft 的开发者环境文档。
INFO
安装并启用 WSL2 后,请确保 Docker Desktop 已配置为使用 WSL2 后端。
接下来即可创建第一个 Laravel 应用。打开 Windows Terminal,为 WSL2 Linux 系统开启新的终端会话,然后用一条简单的终端命令创建应用。例如,要在名为「example-app」的目录中创建,可运行:
curl -s https://laravel.build/example-app | bash当然,你可将 URL 中的「example-app」改成任意名称——只需确保应用名仅包含字母数字、短横线与下划线。Laravel 应用目录会创建在你执行该命令时所在的目录下。
Sail 安装可能需要几分钟,期间会在本机构建 Sail 的应用容器。
应用创建完成后,可进入应用目录并启动 Laravel Sail。Sail 提供了用于与 Laravel 默认 Docker 配置交互的简洁命令行接口:
cd example-app
./vendor/bin/sail up应用的 Docker 容器启动后,应运行应用的数据库迁移:
./vendor/bin/sail artisan migrate最后,可在浏览器访问:http://localhost。
INFO
若要继续了解 Laravel Sail,请参阅其完整文档。
在 WSL2 中开发
当然,你需要能编辑在 WSL2 中创建的 Laravel 应用文件。为此,我们推荐使用 Microsoft 的 Visual Studio Code 及其官方 Remote Development 扩展。
安装这些工具后,可在 Windows Terminal 中于应用根目录执行 code . 打开任意 Laravel 应用。
在 Linux 上使用 Sail
若在 Linux 上开发且已安装 Docker Compose,可用一条简单的终端命令创建新的 Laravel 应用。
首先,若使用 Linux 版 Docker Desktop,请执行以下命令;若未使用,可跳过此步:
docker context use default然后,要在名为「example-app」的目录中创建新的 Laravel 应用,可在终端运行:
curl -s https://laravel.build/example-app | bash当然,你可将 URL 中的「example-app」改成任意名称——只需确保应用名仅包含字母数字、短横线与下划线。Laravel 应用目录会创建在你执行该命令时所在的目录下。
Sail 安装可能需要几分钟,期间会在本机构建 Sail 的应用容器。
应用创建完成后,可进入应用目录并启动 Laravel Sail。Sail 提供了用于与 Laravel 默认 Docker 配置交互的简洁命令行接口:
cd example-app
./vendor/bin/sail up应用的 Docker 容器启动后,应运行应用的数据库迁移:
./vendor/bin/sail artisan migrate最后,可在浏览器访问:http://localhost。
INFO
若要继续了解 Laravel Sail,请参阅其完整文档。
选择 Sail 服务
通过 Sail 创建新 Laravel 应用时,可用 with 查询参数选择要写入应用 docker-compose.yml 的服务。可用服务包括 mysql、pgsql、mariadb、redis、valkey、memcached、meilisearch、typesense、minio、selenium 与 mailpit:
curl -s "https://laravel.build/example-app?with=mysql,redis" | bash若未指定要配置的服务,将默认配置 mysql、redis、meilisearch、mailpit 与 selenium。
可在 URL 中加入 devcontainer 参数,让 Sail 安装默认的 Devcontainer:
curl -s "https://laravel.build/example-app?with=mysql,redis&devcontainer" | bashIDE 支持
开发 Laravel 应用时可使用任意代码编辑器;不过 PhpStorm 对 Laravel 及其生态提供了广泛支持,包括 Laravel Pint。
此外,社区维护的 Laravel Idea PhpStorm 插件还提供代码生成、Eloquent 语法补全、校验规则补全等多种实用 IDE 增强。
Laravel 与 AI
Laravel Boost 能连接 AI 编程 agent 与 Laravel 应用,为 agent 提供 Laravel 专用上下文、工具与指南,从而生成更准确、贴合版本且符合约定的代码。
在应用中安装 Boost 后,AI agent 可使用 15+ 个专用工具,例如了解已安装的包、查询数据库、检索 Laravel 文档、读取浏览器日志、生成测试,以及通过 Tinker 执行代码。
此外,Boost 还为 agent 提供超过 17,000 条向量化的 Laravel 生态文档,并针对你安装的包版本,因此指导会贴合项目实际版本。
Boost 还包含由 Laravel 维护的 AI 指南,帮助 agent 遵循框架约定、编写合适测试,并在生成代码时避开常见陷阱。
安装 Laravel Boost
Boost 可用于运行 PHP 8.1+ 的 Laravel 10、11、12、13 应用。首先作为开发依赖安装:
composer require laravel/boost --dev安装后运行交互式安装程序:
php artisan boost:install安装程序会自动检测 IDE 与 AI agent,让你按项目需要选择功能。Boost 会尊重现有项目约定,默认不强加风格规则。
INFO
了解更多请见 GitHub 上的 Laravel Boost 仓库。
下一步
应用创建完成后,你可能想知道接下来学什么。建议先阅读以下文档,熟悉 Laravel 的工作方式:
- 请求生命周期
- 配置
- 目录结构
- 前端
- 服务容器
- Facade
你打算如何使用 Laravel,也会影响接下来的路径。用法有很多种,下面介绍两种主要场景。
INFO
刚接触 Laravel?可通过 Laravel Bootcamp 动手体验框架,并跟随我们构建第一个 Laravel 应用。
将 Laravel 用作全栈框架
Laravel 可用作全栈框架。所谓「全栈」是指用 Laravel 路由请求,并通过 Blade 模板 或 Inertia 这类单页混合技术渲染前端。这是使用 Laravel 最常见的方式,在我们看来也是最高效的方式。
若计划这样使用,可阅读前端开发、路由、视图或 Eloquent ORM 文档。也可以了解社区包 Livewire 与 Inertia,它们让你在全栈使用 Laravel 的同时,也能享受不少单页应用的 UI 优势。
若将 Laravel 用作全栈框架,也强烈建议学习如何用 Vite 编译 CSS 与 JavaScript。
INFO
若希望更快起步,可查看官方应用起步套件。
将 Laravel 用作 API 后端
Laravel 也可作为 JavaScript 单页应用或移动应用的 API 后端。例如为 Next.js 提供 API。此时可用 Laravel 负责认证与数据存取,并继续使用队列、邮件、通知等能力。
若计划这样使用,可阅读路由、Laravel Sanctum 与 Eloquent ORM 文档。
INFO
需要快速搭建 Laravel 后端与 Next.js 前端?Laravel Breeze 提供了 API 技术栈 以及 Next.js 前端实现,几分钟即可上手。