Laravel 是一个具有富有表现力、优雅语法的 Web 应用程序框架。一个 Web 框架为创建您的应用程序提供了一个结构和起点,让您能够专注于创造令人惊叹的东西,而我们则处理繁琐的细节。
Laravel 致力于提供卓越的开发者体验,同时提供强大的功能,例如完善的依赖注入、富有表现力的数据库抽象层、队列和计划任务、单元测试和集成测试等等。
无论您是 PHP Web 框架的新手还是拥有多年经验,Laravel 都是一个可以与您共同成长的框架。我们将帮助您迈出作为 Web 开发人员的第一步或在您将专业知识提升到更高水平时助您一臂之力。我们迫不及待地想看到您的作品。
在构建 Web 应用程序时,有多种工具和框架可供你使用。然而,我们认为 Laravel 是构建现代全栈 Web 应用程序的最佳选择。
我们喜欢称 Laravel 为一个“渐进式”框架。我们的意思是,Laravel 会与你一同成长。如果你刚刚迈出网络开发的第一步,Laravel 庞大的文档、指南和 视频教程 将帮助你掌握要领而不会感到不知所措。
如果您是一位高级开发人员,Laravel 为您提供了强大的工具,用于依赖注入,单元测试,队列,实时事件,以及更多。Laravel 经过精心调优,旨在构建专业的 Web 应用程序并可处理企业级工作负载。
Laravel 具有惊人的可扩展性。归功于 PHP 易于扩展的特性以及 Laravel 对 Redis 等快速分布式缓存系统的内置支持,使用 Laravel 进行水平扩展轻而易举。事实上,Laravel 应用程序已轻松扩展,能够处理每月数亿次的请求。
需要极致的扩展性吗?像 Laravel Cloud 这样的平台,允许您以近乎无限的规模运行您的 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/installer[!NOTE]
若想获得功能齐全、图形化的 PHP 安装和管理体验,请查看 Laravel Herd。
在安装了 PHP、Composer 和 Laravel 安装器后,你已准备好创建一个新的 Laravel 应用程序。Laravel 安装器将提示你选择你偏好的测试框架、数据库和入门套件:
laravel new example-app应用程序创建完成后, 你可以启动 Laravel 的本地开发服务器, 队列工作器, 和 Vite 开发服务器使用 dev Composer 脚本:
cd example-app
npm install && npm run build
composer run dev一旦你启动了开发服务器,你的应用程序就可以在你的网络浏览器中访问,地址是http://localhost:8000。接下来,你就可以开始迈出你在 Laravel 生态系统中的下一步。当然,你可能还想配置数据库。
[!NOTE]
如果您希望在开发 Laravel 应用时抢占先机,请考虑使用我们的 入门套件。Laravel 的入门套件为您的新 Laravel 应用提供后端和前端身份验证脚手架。
Laravel 框架的所有配置文件都存储在 config 目录中。每个选项都有文档说明,所以请随意查阅这些文件,熟悉可用的选项。
Laravel 开箱即用,几乎不需要额外的配置。 你可以自由地开始开发! 但是,你可能希望查阅 config/app.php 文件及其文档。 它包含一些选项,例如 url 和 locale,你可能希望根据你的应用程序进行更改。
由于许多 Laravel 的配置选项值可能会因您的应用是在本地机器上运行还是在生产 Web 服务器上运行而异,许多重要的配置值都是使用位于您的应用根目录下的 .env 文件定义的。
您的 .env 文件不应提交到您应用程序的源代码管理中, 因为每个使用您应用程序的开发人员 / 服务器可能需要不同的环境配置。 此外, 这会是一个安全风险, 万一入侵者获得了您源代码管理仓库的访问权限, 因为任何敏感凭据都将被暴露。
[!NOTE]
有关.env文件以及基于环境的配置的更多信息,请查阅完整的配置文档。
既然您已经创建了 Laravel 应用程序,您可能希望在数据库中存储一些数据。默认情况下,您的应用程序的 .env 配置文件指定 Laravel 将与 SQLite 数据库进行交互。
在创建应用程序期间,Laravel 为你创建了一个 database/database.sqlite 文件,并运行了必要的迁移来创建应用程序的数据库表。
如果你偏好使用其他数据库驱动,例如 MySQL 或 PostgreSQL,你可以更新你的 .env 配置文件以使用相应的数据库。例如,如果你希望使用 MySQL,更新你的 .env 配置文件的 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[!NOTE]
如果您正在 macOS 或 Windows 上进行开发,并且需要本地安装 MySQL、PostgreSQL 或 Redis,可以考虑使用 Herd Pro 或 DBngin。
Laravel 应该始终从为您的 Web 服务器配置的 "web directory" 的根目录提供服务。您不应该尝试从 "web directory" 的子目录中提供 Laravel 应用程序。尝试这样做可能会暴露您的应用程序中存在的敏感文件。
Laravel Herd 是一个极速的、原生的 Laravel 和 PHP 开发环境,适用于 macOS 和 Windows。Herd 包含了您开始 Laravel 开发所需的一切,包括 PHP 和 Nginx。
一旦您安装了 Herd,您就可以开始使用 Laravel 进行开发了。Herd 包含用于 php、composer、laravel、expose、node、npm 和 nvm 的命令行工具。
[!NOTE]
Herd Pro 为 Herd 增添了额外的强大功能,例如创建和管理本地 MySQL、Postgres 和 Redis 数据库的能力,以及本地邮件查看和日志监控。
如果您在 macOS 上进行开发,您可以从 Herd 网站 下载 Herd 安装程序。该安装程序会自动下载最新版本的 PHP,并将您的 Mac 配置为始终在后台运行 Nginx。
Herd for macOS 使用 dnsmasq 来支持 "停放"目录。在停放目录中的任何 Laravel 应用程序都将自动由 Herd 提供服务。默认情况下,Herd 会在 ~/Herd 创建一个停放目录,并且您可以使用其目录名,通过 .test 域名访问此目录中的任何 Laravel 应用程序。
安装 Herd 后,创建新的 Laravel 应用程序的最快方法是使用与 Herd 捆绑的 Laravel CLI:
cd ~/Herd
laravel new my-app
cd my-app
herd open当然,您始终可以通过 Herd 的 UI 管理您的停放目录和其他 PHP 设置,该 UI 可以从系统托盘中的 Herd 菜单打开。
你可以通过查阅 Herd 文档 来了解更多关于 Herd 的信息。
您可以在 Herd 网站 下载 Herd 的 Windows 安装程序。安装完成后,您可以启动 Herd 来完成引导过程并首次访问 Herd UI。
Herd UI 可通过左键点击 Herd 的系统托盘图标来访问。右键点击可打开快速菜单 其中包含您日常所需的所有工具。
在安装期间,Herd 会在您的主目录中创建一个“parked”目录,路径是 %USERPROFILE%\Herd。位于 parked 目录中的任何 Laravel 应用程序都将由 Herd 自动提供服务,并且您可以使用其目录名在 .test 域上访问此目录中的任何 Laravel 应用程序。
安装 Herd 后,创建新的 Laravel 应用程序最快的方法是使用 Laravel CLI,它与 Herd 捆绑在一起。要开始,打开 Powershell 并运行以下命令:
cd ~\Herd
laravel new my-app
cd my-app
herd open您可以查看 Herd Windows 文档 了解有关 Herd 的更多信息。
开发 Laravel 应用时, 您可以自由使用任何您喜欢的代码编辑器。 如果您正在寻找轻量且可扩展的编辑器, VS Code 或 Cursor 结合官方的 Laravel VS Code 扩展 提供了出色的 Laravel 支持, 具有语法高亮, 代码片段, Artisan 命令集成, 以及针对 Eloquent 模型, 路由, 中间件, 资产, 配置, 和 Inertia.js 的智能自动补全等功能。
针对 Laravel 的广泛而强大的支持,查看 PhpStorm,一个 JetBrains IDE。结合 Laravel Idea 插件,它为 Laravel 及其生态系统提供精确支持,包括 Laravel Pint、Pest、Larastan 等。Laravel Idea 的框架支持包括 Blade 模板、对 Eloquent 模型、路由、视图、翻译和组件的智能自动补全,以及跨 Laravel 项目的强大代码生成和导航功能。
对于那些寻求基于云的开发体验的用户,Firebase Studio 提供了直接在浏览器中构建 Laravel 应用的即时访问。无需任何设置,Firebase Studio 让您可以在任何设备上轻松开始构建 Laravel 应用。
Laravel Boost 是一个强大的工具,弥合了 AI 编码代理和 Laravel 应用程序之间的鸿沟。Boost 为 AI 代理提供了 Laravel 特定的上下文、工具和指导原则,以便它们能够生成更准确、特定于版本的代码,并遵循 Laravel 约定。
当你在 Laravel 应用程序中安装 Boost 时,AI 代理将获得超过 15 种专业工具的访问权限,包括能够知道你正在使用哪些包、查询你的数据库、搜索 Laravel 文档、读取浏览器日志、生成测试,并通过 Tinker 执行代码。
此外,Boost 还使 AI 代理能够访问超过 17,000 份向量化的 Laravel 生态系统文档,这些文档专为您的已安装软件包版本定制。这意味着代理可以提供针对您的项目所使用的确切版本的指导。
Boost 还包括 Laravel 维护的 AI 指南,帮助代理遵循框架约定、编写适当的测试,并在生成 Laravel 代码时避免常见陷阱。
Boost 可以安装在运行 PHP 8.1 或更高版本的 Laravel 10、11 和 12 应用程序中。要开始使用,请将 Boost 作为开发依赖安装:
composer require laravel/boost --dev安装完成后,运行交互式安装程序:
php artisan boost:install安装程序将自动检测您的IDE和AI代理,让您选择启用适合您项目的功能。Boost尊重现有的项目约定,并且默认不强制有主观倾向的样式规则。
[!注]
了解更多关于 Boost 的信息,请查看 GitHub 上的 Laravel Boost 仓库。
既然你已经创建了你的 Laravel 应用程序,你可能想知道接下来要学什么。首先,我们强烈建议你通过阅读以下文档来熟悉 Laravel 的工作原理:
您希望如何使用 Laravel 也将决定您旅程的下一步。使用 Laravel 的方式多种多样,我们将在下面探讨该框架的两个主要用例。
Laravel 可以作为一个全栈框架使用。我们所说的“全栈”框架是指你将使用 Laravel 来路由请求到你的应用程序并通过 Blade 模板 或像 Inertia 这样的单页应用混合技术来渲染你的前端。这是使用 Laravel 框架最常见的方式,并且,在我们看来,是使用 Laravel 最有效率的方式。
如果您打算以这种方式使用 Laravel,您可能需要查阅我们关于前端开发、路由、视图或 Eloquent ORM。此外,您可能对了解 Livewire 和 Inertia 等社区包感兴趣。这些包允许您将 Laravel 用作全栈框架同时享受单页 JavaScript 应用程序提供的许多 UI 优势。
如果您正在将 Laravel 用作全栈框架,我们还强烈建议您学习如何使用 Vite 编译应用程序的 CSS 和 JavaScript。
[!注意]
如果您想快速开始构建您的应用程序,请查看我们的官方应用程序启动套件。
Laravel 也可以作为一个 API 后端,为 JavaScript 单页应用或移动应用提供服务。例如,您可以使用 Laravel 作为 Next.js 应用的 API 后端。在这种情况下,您可以使用 Laravel 为您的应用提供 认证 和数据存储/检索,同时还可以利用 Laravel 强大的服务,例如队列、电子邮件、通知等。
如果您计划以这种方式使用 Laravel,您可能需要查阅我们关于 路由, Laravel Sanctum, 以及 Eloquent ORM 的文档。