Skip to content
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待

安装

认识 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 应用。

为 AI 代理而生的框架

Laravel 有主见的约定和清晰定义的结构使其成为使用 Cursor 和 Claude Code 等工具进行 AI 辅助开发的理想框架。当你要求 AI 代理添加一个控制器时,它确切地知道该放在哪里。当你需要一个新的迁移时,命名约定和文件位置是可预测的。这种一致性消除了在更灵活的框架中经常困扰 AI 工具的猜测工作。

除了文件组织之外,Laravel 的表达力语法和全面文档为 AI 代理提供了生成准确、地道代码所需的上下文。像 Eloquent 关联、表单请求和中间件等功能遵循的模式,代理可以可靠地理解和复现。结果是 AI 生成的代码看起来就像是由经验丰富的 Laravel 开发者编写的,而不是从通用 PHP 片段拼凑而成。

要了解更多关于 Laravel 为何是 AI 辅助开发的完美选择,请查看我们关于智能体开发的文档。

社区驱动的框架

Laravel 结合了 PHP 生态系统中最好的包,提供了最强大且对开发者最友好的框架。此外,来自世界各地的数千名才华横溢的开发者已经为框架做出了贡献。谁知道呢,也许你也会成为 Laravel 的贡献者。

创建 Laravel 应用

开始使用AI

如果你正在使用像 Claude CodeOpenCode 这样的AI编码助手,你可以在它接触你的项目之前,先给它一个提示词,让它了解Laravel特定的操作手册。

下面的提示词会告诉助手在哪里找到Laravel的安装指引、需要优先考虑什么,以及在你尚未做出选择时如何采用合理的默认配置。将这个提示词粘贴到你的助手中即可开始:

text
我正在构建一个新的 Laravel 应用。

获取并遵循来自 https://laravel.com/for/agents 的说明。将返回的 Markdown 内容视为本次会话中安装和设置 Laravel 的权威指南。

助手阅读完说明后,会逐步引导你完成设置,并确保整个配置过程与 Laravel 的默认方式保持一致。

安装 PHP 和 Laravel 安装器

在创建第一个 Laravel 应用之前,请确保你的本地机器已安装 PHPComposerLaravel 安装器。此外,你还应安装 Node 和 NPMBun,以便编译应用的前端资源。

如果你本地机器上没有安装 PHP 和 Composer,以下命令将在 macOS、Windows 或 Linux 上安装 PHP、Composer 和 Laravel 安装器:

shell
/bin/bash -c "$(curl -fsSL https://php.new/install/mac/8.4)"
shell
# 以管理员身份运行...
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'))
shell
/bin/bash -c "$(curl -fsSL https://php.new/install/linux/8.4)"

运行上述任一命令后,应重新启动终端会话。要通过 php.new 安装 PHP、Composer 和 Laravel 安装器后更新它们,可以重新在终端中运行该命令。

如果你已经安装了 PHP 和 Composer,可以通过 Composer 安装 Laravel 安装器:

shell
composer global require laravel/installer

NOTE

如需功能完备、图形化的 PHP 安装和管理体验,请查看 Laravel Herd

创建应用

安装完 PHP、Composer 和 Laravel 安装器后,你就可以创建一个新的 Laravel 应用了。Laravel 安装器会提示你选择首选的测试框架、数据库和启动套件:

shell
laravel new example-app

创建应用后,你可以使用 dev Composer 脚本启动 Laravel 的本地开发服务器、队列工作器和 Vite 开发服务器:

shell
cd example-app
npm install && npm run build
composer run dev

启动开发服务器后,你可以在 Web 浏览器中通过 http://localhost:8000 访问你的应用。接下来,你就可以开始进入 Laravel 生态系统的下一步。当然,你可能还想配置数据库

NOTE

如果你想在开发 Laravel 应用时获得一个快速起点,可以考虑使用我们的启动套件。Laravel 的启动套件为你的新 Laravel 应用提供了后端和前端认证脚手架。

初始配置

Laravel 框架的所有配置文件都存储在 config 目录中。每个选项都有文档说明,因此请随时查看这些文件,熟悉可用的选项。

Laravel 开箱几乎不需要额外配置。你可以立即开始开发!但你可能需要查看 config/app.php 文件及其文档。它包含几个选项,例如 urllocale,你可能需要根据你的应用进行更改。

基于环境的配置

由于 Laravel 的许多配置选项值可能因你的应用是在本地机器上运行还是在生产 Web 服务器上运行而不同,许多重要的配置值都是使用位于应用根目录的 .env 文件定义的。

你的 .env 文件不应提交到应用的源代码控制中,因为使用你的应用的每个开发者/服务器可能需要不同的环境配置。此外,如果入侵者获得对你源代码控制仓库的访问权限,这也会带来安全风险,因为任何敏感凭据都会暴露。

NOTE

有关 .env 文件和基于环境的配置的更多信息,请查看完整的配置文档

数据库与迁移

现在你已经创建了 Laravel 应用,你可能希望将一些数据存储在数据库中。默认情况下,你的应用 .env 配置文件指定 Laravel 将与 SQLite 数据库交互。

在创建应用期间,Laravel 为你创建了一个 database/database.sqlite 文件,并运行了必要的迁移来创建应用的数据库表。

如果你更喜欢使用其他数据库驱动(如 MySQL 或 PostgreSQL),可以更新你的 .env 配置文件以使用相应的数据库。例如,如果你想使用 MySQL,可以像这样更新 .env 配置文件中的 DB_* 变量:

ini
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

如果你选择使用 SQLite 以外的数据库,则需要创建该数据库并运行应用的数据库迁移

shell
php artisan migrate

NOTE

如果你在 macOS 或 Windows 上开发,并且需要在本地安装 MySQL、PostgreSQL 或 Redis,可以考虑使用 Herd ProDBngin

目录配置

Laravel 应始终从为你的 Web 服务器配置的“Web 目录”的根目录提供服务。你不应尝试从“Web 目录”的子目录中提供 Laravel 应用。尝试这样做可能会暴露你应用中存在的敏感文件。

使用 Herd 安装

Laravel Herd 是一个用于 macOS 和 Windows 的极速、原生的 Laravel 和 PHP 开发环境。Herd 包含了开始使用 Laravel 开发所需的一切,包括 PHP 和 Nginx。

安装 Herd 后,你就可以开始使用 Laravel 进行开发了。Herd 包含 phpcomposerlaravelexposenodenpmnvm 的命令行工具。

NOTE

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 一起提供:

shell
cd ~/Herd
laravel new my-app
cd my-app
herd open

当然,你始终可以通过 Herd 的 UI 管理你的停放目录和其他 PHP 设置,该 UI 可以从系统托盘中的 Herd 菜单打开。

你可以通过查看 Herd 文档 来了解更多关于 Herd 的信息。

Windows 上的 Herd

你可以在 Herd 网站 上下载适用于 Windows 的 Herd 安装程序。安装完成后,你可以启动 Herd 以完成引导过程并首次访问 Herd UI。

Herd UI 可以通过左键单击 Herd 的系统托盘图标来访问。右键单击可打开快速菜单,访问日常所需的所有工具。

在安装过程中,Herd 会在你的用户目录 %USERPROFILE%\Herd 中创建一个“停放”目录。停放目录中的任何 Laravel 应用都将自动由 Herd 提供服务,你可以使用其目录名在 .test 域上访问此目录中的任何 Laravel 应用。

安装 Herd 后,创建新 Laravel 应用的最快方法是使用 Laravel CLI,它随 Herd 一起提供。首先,打开 Powershell 并运行以下命令:

shell
cd ~\Herd
laravel new my-app
cd my-app
herd open

你可以通过查看 Herd Windows 文档 来了解更多关于 Herd 的信息。

IDE 支持

开发 Laravel 应用时,你可以自由使用任何你喜欢的代码编辑器。如果你正在寻找轻量级且可扩展的编辑器,VS CodeCursor 结合官方的 Laravel VS Code 扩展 提供了出色的 Laravel 支持,具有语法高亮、代码片段、Artisan 命令集成以及 Eloquent 模型、路由、中间件、资源、配置和 Inertia.js 的智能自动补全等功能。

如需对 Laravel 进行全面而强大的支持,请查看 PhpStorm,这是一款 JetBrains IDE。PhpStorm 内置的 Laravel 框架支持包括 Blade 模板、Eloquent 模型、路由、视图、翻译和组件的智能自动补全,以及跨 Laravel 项目的强大代码生成和导航功能。

对于那些寻求基于云的开发体验的人来说,Firebase Studio 提供了直接在浏览器中构建 Laravel 的即时访问。无需任何设置,Firebase Studio 使从任何设备开始构建 Laravel 应用变得容易。

Laravel 与 AI

Laravel Boost 是一个强大的工具,它弥合了 AI 编码代理与 Laravel 应用之间的差距。Boost 为 AI 代理提供了 Laravel 特定的上下文、工具和指南,以便它们能够生成更准确、符合 Laravel 约定的特定版本代码。

当你在 Laravel 应用中安装 Boost 后,AI 代理可以获得超过 15 个专用工具的访问权限,包括能够知道你正在使用哪些包、查询你的数据库、搜索 Laravel 文档、读取浏览器日志、生成测试以及通过 Tinker 执行代码。

此外,Boost 还为 AI 代理提供了超过 17,000 条向量化的 Laravel 生态系统文档,这些文档特定于你安装的包版本。这意味着代理可以提供针对你项目使用的确切版本的指导。

Boost 还包括由 Laravel 维护的 AI 指南,这些指南有助于代理遵循框架约定、编写适当的测试,并在生成 Laravel 代码时避免常见陷阱。

安装 Laravel Boost

Boost 可以安装在运行 PHP 8.1 或更高版本的 Laravel 10、11、12 和 13 应用程序中。要开始使用,请将 Boost 作为开发依赖安装:

shell
composer require laravel/boost --dev

安装后,运行交互式安装程序:

shell
php artisan boost:install

安装程序将自动检测你的 IDE 和 AI 代理,允许你选择对项目有意义的特性。Boost 尊重现有的项目约定,默认不会强制推行有主见的样式规则。

NOTE

要了解有关 Boost 的更多信息,请查看 GitHub 上的 Laravel Boost 仓库

添加自定义 AI 指南

要用你自己的自定义 AI 指南增强 Laravel Boost,可以将 .blade.php.md 文件添加到应用程序的 .ai/guidelines/* 目录中。当你运行 boost:install 时,这些文件将自动包含在 Laravel Boost 的指南中。

下一步

现在你已经创建了 Laravel 应用,可能想知道接下来该学习什么。首先,我们强烈建议通过阅读以下文档来熟悉 Laravel 的工作原理:

你希望如何使用 Laravel 也将决定你旅程的下一步。使用 Laravel 的方式有多种,下面我们将探讨框架的两个主要用例。

Laravel 作为全栈框架

Laravel 可以作为全栈框架使用。所谓“全栈”框架,是指你将使用 Laravel 将请求路由到你的应用,并通过 Blade 模板 或像 Inertia 这样的单页应用混合技术来渲染前端。这是使用 Laravel 框架最常见的方式,而且在我们看来,也是使用 Laravel 最高效的方式。

如果你计划这样使用 Laravel,你可能想查看我们关于前端开发路由视图Eloquent ORM 的文档。此外,你可能对了解像 LivewireInertia 这样的社区包感兴趣。这些包允许你将 Laravel 用作全栈框架,同时享受单页 JavaScript 应用提供的许多 UI 优势。

如果你将 Laravel 用作全栈框架,我们还强烈建议你学习如何使用 Vite 编译应用的 CSS 和 JavaScript。

NOTE

如果你想在构建应用时获得一个快速起点,请查看我们的官方应用启动套件

Laravel 作为 API 后端

Laravel 也可以用作 JavaScript 单页应用或移动应用的 API 后端。例如,你可以将 Laravel 用作你的 Next.js 应用的 API 后端。在这种情况下,你可以使用 Laravel 为你的应用提供认证和数据存储/检索,同时利用 Laravel 强大的服务,如队列、邮件、通知等。

如果你计划这样使用 Laravel,你可能想查看我们关于路由Laravel SanctumEloquent ORM 的文档。