Laravel
| 中文名 | Laravel |
|---|---|
| 英文名 | Laravel |
| 开发者 | Taylor Otwell |
| 首次发布 | 2011年6月[1] |
| 当前版本 | 13.17.0(2026年6月23日)[1] |
| 编程语言 | PHP |
| 类型 | Web应用框架 |
| 许可协议 | MIT许可证[1] |
| 网站 | laravel.com |
| 源代码库 | GitHub |
Laravel 是一个由 Taylor Otwell 所建立、自由开源的 PHP Web 框架,旨在实现 Web 软件的 MVC(模型-视图-控制器)架构,并作为 CodeIgniter 的替代方案[2][3]。其源代码托管于 GitHub,许可条款为 MIT 许可证[1][3]。Laravel 的特色包含支持用户身份验证和授权,具有模块化的包系统且有专属的包库,提供连接多种关系型数据库的方式,提供工具来协助应用程序的部署和维护,并且发展出许多语法糖[1][3]。Laravel 与 Symfony、Zend、CodeIgniter、Yii2 和其他框架一起被视为最受欢迎的 PHP 框架之一[1]。
Taylor Otwell 创建 Laravel 的初衷,是为 CodeIgniter 框架提供一个更先进的替代方案,因为 CodeIgniter 缺少某些功能,例如对用户身份验证和授权的内置支持[3][4]。Otwell 当时是美国阿肯色州的一名 .NET 开发人员,在使用 CodeIgniter 时发现无法在不破坏框架内部代码的情况下添加所需功能,因此萌生了创建新框架的想法[5]。
Laravel 的第一个 Beta 测试版本于 2011 年 6 月 9 日发布,并在一个月后发布了正式版本 Laravel 1[1][3]。Laravel 1 默认提供了身份验证、多语系、模型(Model)、视图(View)、会话(Session)、路由和其他机制,但缺少控制器,因此无法成为真正的 MVC 框架[1]。
Laravel 2 于 2011 年 9 月正式发布,由作者与社区提供了许多优化[1]。主要的新功能包括支持控制器(Controller),使 Laravel 2 成为真正的 MVC 框架,并且实现了控制反转(IoC),提供了模板引擎 Blade[1][3]。但同时也移除了对第三方包的支持[1][3]。
Laravel 3 于 2012 年 2 月发布[3],带来的新功能包括:命令行界面(CLI)Artisan、支持多种数据库管理系统、提供迁移(Migration)为数据库做版本控制、支持事件(Event)的处理,以及封装系统 Bundles[1][3]。随着 Laravel 3 的发布,Laravel 的用户和受欢迎程度也随之增加[1]。
Laravel 4,代号为 Illuminate,于 2013 年 5 月发布[1][3]。此版本将过去的代码完全重写,并分散到许多独立的包中,通过 Composer 进行管理(一个应用程序级别的包管理工具)[1][3]。这样的修改提高了 Laravel 4 的可扩展性[1]。其他特点包括:数据库的 Seeding(为数据库建置初始数据)、支持队列(Queue)、支持发送不同类型的电子邮件,并支持数据库的软删除[1]。
Laravel 5 于 2015 年 2 月发布[1]。新的特点包括:提供周期性执行任务的调度器 Scheduler、提供一个抽象层 Flysystem 让远程与本地端的文件系统能有相同的操作方式、提供 Elixir 以管理静态资源,并提供了可简化串接 OAuth 登录的包 Socialite[1]。Laravel 5 也同时修改了目录结构[1]。Laravel 5.1 于 2015 年 6 月发布,是 Laravel 的第一个长期支持(LTS)版本[1]。
Laravel 6 于 2019 年 9 月发布,提供了更好的性能和更多的安全性,同时增加了大量的新功能[6]。Laravel 7.0 于 2020 年 3 月发布,增加了如 Laravel Nova、Blade 组件等新功能[6]。Laravel 8.0 于 2020 年 9 月发布,增加了类自动发现、路由缓存等新特性[6]。Laravel 9 于 2022 年 2 月发布,要求 PHP 8.0 或更高版本[7]。Laravel 10 于 2023 年 2 月发布,要求 PHP 8.1 或更高版本[7]。Laravel 11 于 2024 年 3 月发布,引入了更简洁的应用程序结构、健康路由、无加密的秒级限流等特性[7][6]。
2024 年 9 月 5 日,Laravel 宣布从 Accel 获得了 5700 万美元的 A 轮融资[3][5]。
Laravel 遵循 MVC(模型-视图-控制器)架构模式[1][3]。它基于 Symfony 框架的多个组件构建[3]。
- **Eloquent ORM**:一个 ActiveRecord 实现,用于数据库交互,支持对关系双方应用约束并完整集成 Fluent 查询构造器的所有方法[8]。
- **Blade 模板引擎**:一个轻量级但功能强大的模板引擎,用于构建视图[1]。
- **Artisan 命令行工具**:提供了一系列用于自动化常见开发任务的命令,如数据库迁移、单元测试等[1][8]。
- **路由系统**:灵活且富有表现力的路由定义方式,支持 RESTful 风格的路由定义、路由分组、中间件等[8]。
- **中间件(Middleware)**:允许开发者在请求和响应的生命周期中插入自定义逻辑,有助于实现身份验证、授权、缓存等功能[8]。
- **事件和监听器(Events & Listeners)**:提供了一个事件系统,允许开发者在特定事件发生时触发自定义逻辑,有助于实现解耦和可扩展的应用程序[8]。
- **服务容器(Service Container)**:一个用于依赖注入(DI)和依赖解析的工具[1]。
- **数据库迁移(Migrations)**:为数据库提供版本控制功能,便于团队协作和部署[1]。
- **队列(Queues)**:支持将耗时任务(如发送电子邮件)延迟处理,以提高应用程序的响应速度[1]。
Laravel 拥有一个庞大且活跃的生态系统,包括官方和社区提供的各种工具和服务:
- **Laravel Forge**:服务器管理和部署工具,支持 AWS、DigitalOcean、Linode 等云平台[9]。
- **Laravel Vapor**:一个由 AWS Lambda 驱动的无服务器部署平台[9]。
- **Laravel Nova**:一个用于构建管理面板的优雅工具[9]。
- **Laravel Echo**:一个用于实时事件广播的 JavaScript 库[9]。
- **Laravel Socialite**:一个用于简化 OAuth 身份验证(如 Facebook、Twitter、Google 登录)的包[1]。
- **Laravel Horizon**:一个用于监控和管理 Redis 队列的面板[9]。
- **Laravel Telescope**:一个用于调试和监控应用程序的调试助手[9]。
- **Laravel Dusk**:一个用于自动化浏览器测试的工具[9]。
Laravel 的主要版本发布遵循年度发布周期(约在第一季度)[10]。次要版本和补丁版本可能每周发布,且不包含破坏性变更[10]。对于所有 Laravel 版本,错误修复提供 18 个月,安全修复提供 2 年[10]。
- Laravel 1 – 2011 年 6 月
- Laravel 2 – 2011 年 9 月
- Laravel 3 – 2012 年 2 月
- Laravel 4 – 2013 年 5 月
- Laravel 5 – 2015 年 2 月
- Laravel 6 – 2019 年 9 月
- Laravel 7 – 2020 年 3 月
- Laravel 8 – 2020 年 9 月
- Laravel 9 – 2022 年 2 月
- Laravel 10 – 2023 年 2 月
- Laravel 11 – 2024 年 3 月
Laravel 拥有一个庞大且活跃的全球开发者社区[8]。社区贡献了大量的扩展包、教程和文档[8]。Laravel 的文档被认为是最全面、最易于学习的现代 Web 应用框架文档之一[8]。
- ↑ 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1.28 1.29 Laravel - 维基百科,自由的百科全书
- ↑ 引用错误:
<ref>标签无效;未给name(名称)为wiki-zh的ref(参考)提供文本 - ↑ 3.00 3.01 3.02 3.03 3.04 3.05 3.06 3.07 3.08 3.09 3.10 3.11 3.12 3.13 3.14 Laravel - Wikipedia
- ↑ 创始人拒绝投资 13 年、仅有几十人的开源项目斩获 81k+ GitHub star,用户破百万!网友:他一个人拯救了 PHP
- ↑ 5.0 5.1 Laravel 获得 5700 万美元融资,Web开发迎来新天地
- ↑ 6.0 6.1 6.2 6.3 6.4 框架Laravel有哪些版本迭代
- ↑ 7.0 7.1 7.2 Laravel News
- ↑ 8.0 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 Laravel - 百度百科
- ↑ 9.0 9.1 9.2 9.3 9.4 9.5 9.6 Laravel - The PHP Framework For Web Artisans
- ↑ 10.0 10.1 10.2 Laravel Release Notes