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 Vapor 这样的平台允许你在 AWS 最新的无服务器技术上以几乎无限的规模运行你的 Laravel 应用程序。

社区框架

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

你的第一个 Laravel 项目

我们希望让你尽可能轻松地开始使用 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 上开始

如果你在 Mac 上开发并且已经安装了 Docker Desktop,你可以使用一个简单的终端命令来创建一个新的 Laravel 项目。例如,要在名为“example-app”的目录中创建一个新的 Laravel 应用程序,你可以在终端中运行以下命令:

curl -s "https://laravel.build/example-app" | bash

当然,你可以将此 URL 中的“example-app”更改为任何你喜欢的名称。Laravel 应用程序的目录将创建在你执行命令的目录中。

项目创建后,你可以导航到应用程序目录并启动 Laravel Sail。Laravel Sail 提供了一个简单的命令行界面,用于与 Laravel 的默认 Docker 配置进行交互:

cd example-app

./vendor/bin/sail up

首次运行 Sail up 命令时,Sail 的应用程序容器将在你的计算机上构建。这可能需要几分钟。别担心,后续启动 Sail 的尝试将快得多。

一旦应用程序的 Docker 容器启动,你可以在浏览器中访问应用程序:http://localhost

{提示} 要继续了解有关 Laravel Sail 的更多信息,请查看其完整文档

在 Windows 上开始

在你的 Windows 机器上创建新的 Laravel 应用程序之前,请确保安装 Docker Desktop。接下来,你应该确保安装并启用了 Windows Subsystem for Linux 2 (WSL2)。WSL 允许你在 Windows 10 上本地运行 Linux 二进制可执行文件。有关如何安装和启用 WSL2 的信息,请参阅 Microsoft 的开发者环境文档

{提示} 安装并启用 WSL2 后,你应该确保 Docker Desktop 配置为使用 WSL2 后端

接下来,你可以创建你的第一个 Laravel 项目。启动 Windows Terminal 并为你的 WSL2 Linux 操作系统开始一个新的终端会话。接下来,你可以使用一个简单的终端命令来创建一个新的 Laravel 项目。例如,要在名为“example-app”的目录中创建一个新的 Laravel 应用程序,你可以在终端中运行以下命令:

curl -s https://laravel.build/example-app | bash

当然,你可以将此 URL 中的“example-app”更改为任何你喜欢的名称。Laravel 应用程序的目录将创建在你执行命令的目录中。

项目创建后,你可以导航到应用程序目录并启动 Laravel Sail。Laravel Sail 提供了一个简单的命令行界面,用于与 Laravel 的默认 Docker 配置进行交互:

cd example-app

./vendor/bin/sail up

首次运行 Sail up 命令时,Sail 的应用程序容器将在你的计算机上构建。这可能需要几分钟。别担心,后续启动 Sail 的尝试将快得多。

一旦应用程序的 Docker 容器启动,你可以在浏览器中访问应用程序:http://localhost

{提示} 要继续了解有关 Laravel Sail 的更多信息,请查看其完整文档

在 WSL2 中开发

当然,你需要能够修改在 WSL2 安装中创建的 Laravel 应用程序文件。为此,我们推荐使用 Microsoft 的 Visual Studio Code 编辑器及其官方扩展 Remote Development

安装这些工具后,你可以通过在 Windows Terminal 中从应用程序的根目录执行 code . 命令来打开任何 Laravel 项目。

在 Linux 上开始

如果你在 Linux 上开发并且已经安装了 Docker Compose,你可以使用一个简单的终端命令来创建一个新的 Laravel 项目。例如,要在名为“example-app”的目录中创建一个新的 Laravel 应用程序,你可以在终端中运行以下命令:

curl -s https://laravel.build/example-app | bash

当然,你可以将此 URL 中的“example-app”更改为任何你喜欢的名称。Laravel 应用程序的目录将创建在你执行命令的目录中。

项目创建后,你可以导航到应用程序目录并启动 Laravel Sail。Laravel Sail 提供了一个简单的命令行界面,用于与 Laravel 的默认 Docker 配置进行交互:

cd example-app

./vendor/bin/sail up

首次运行 Sail up 命令时,Sail 的应用程序容器将在你的计算机上构建。这可能需要几分钟。别担心,后续启动 Sail 的尝试将快得多。

一旦应用程序的 Docker 容器启动,你可以在浏览器中访问应用程序:http://localhost

{提示} 要继续了解有关 Laravel Sail 的更多信息,请查看其完整文档

选择你的 Sail 服务

通过 Sail 创建新的 Laravel 应用程序时,你可以使用 with 查询字符串变量选择哪些服务应在新应用程序的 docker-compose.yml 文件中配置。可用的服务包括 mysqlpgsqlmariadbredismemcachedmeilisearchminioseleniummailhog

curl -s "https://laravel.build/example-app?with=mysql,redis" | bash

如果你没有指定要配置的服务,将配置默认的 mysqlredismeilisearchmailhogselenium 堆栈。

通过 Composer 安装

如果你的计算机已经安装了 PHP 和 Composer,你可以直接使用 Composer 创建一个新的 Laravel 项目。应用程序创建后,你可以使用 Artisan CLI 的 serve 命令启动 Laravel 的本地开发服务器:

composer create-project laravel/laravel:^8.0 example-app

cd example-app

php artisan serve

Laravel 安装器

或者,你可以将 Laravel 安装器作为全局 Composer 依赖项安装:

composer global require laravel/installer

laravel new example-app

cd example-app

php artisan serve

确保将 Composer 的系统范围的 vendor bin 目录放入你的 $PATH 中,以便系统可以找到 laravel 可执行文件。此目录在不同的操作系统中位于不同的位置;然而,一些常见的位置包括:

  • macOS: $HOME/.composer/vendor/bin
  • Windows: %USERPROFILE%\AppData\Roaming\Composer\vendor\bin
  • GNU / Linux 发行版: $HOME/.config/composer/vendor/bin$HOME/.composer/vendor/bin

为了方便,Laravel 安装器还可以为你的新项目创建一个 Git 仓库。要指示你希望创建一个 Git 仓库,请在创建新项目时传递 --git 标志:

laravel new example-app --git

此命令将为你的项目初始化一个新的 Git 仓库,并自动提交基础 Laravel 骨架。git 标志假定你已正确安装和配置 Git。你还可以使用 --branch 标志设置初始分支名称:

laravel new example-app --git --branch="main"

除了使用 --git 标志,你还可以使用 --github 标志创建一个 Git 仓库,并在 GitHub 上创建一个相应的私有仓库:

laravel new example-app --github

创建的仓库将可在 https://github.com/<your-account>/example-app 访问。github 标志假定你已正确安装 GitHub CLI 并已通过 GitHub 进行身份验证。此外,你应该已安装并正确配置 git。如果需要,你可以传递 GitHub CLI 支持的其他标志:

laravel new example-app --github="--public"

你可以使用 --organization 标志在特定的 GitHub 组织下创建仓库:

laravel new example-app --github="--public" --organization="laravel"

初始配置

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

Laravel 开箱即用几乎不需要额外的配置。你可以自由地开始开发!然而,你可能希望查看 config/app.php 文件及其文档。它包含了几个选项,如 timezonelocale,你可能希望根据你的应用程序进行更改。

基于环境的配置

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

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

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

目录配置

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

下一步

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

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

Laravel 全栈框架

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

如果这是你计划使用 Laravel 的方式,你可能想查看我们的路由视图Eloquent ORM 文档。此外,你可能会对学习社区包如 LivewireInertia.js 感兴趣。这些包允许你将 Laravel 作为全栈框架使用,同时享受单页 JavaScript 应用程序提供的许多 UI 优势。

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

{提示} 如果你想快速开始构建应用程序,请查看我们的官方应用程序入门套件

Laravel API 后端

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

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

{提示} 需要快速启动你的 Laravel 后端和 Next.js 前端?Laravel Breeze 提供了一个 API 堆栈 以及一个 Next.js 前端实现,让你可以在几分钟内开始。