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 应用程序

安装 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 应用程序的最快方法是使用与 Herd 捆绑的 Laravel CLI:

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

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

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

Windows 上的 Herd

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

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

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

安装 Herd 后,创建新 Laravel 应用程序的最快方法是使用与 Herd 捆绑的 Laravel CLI。首先,打开 Powershell 并运行以下命令:

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

您可以通过查看 Windows 版 Herd 文档了解更多关于 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 的文档。