Laravel 9 正式发布,新功能一览!

Laravel框架
450
0
0
2022-03-20

Laravel 9 正式版已发布,新功能包括:使用 PHP v8.0、控制器路由组、新的默认 Ignition 错误页面、Laravel Scout 数据库引擎、集成 Symfony Mailer、Flysystem 3.x、改进的 Eloquent 访问器/修改器,以及更多功能。

相关推荐:《快速讲解安装Laravel 9 的两种方法》

全新的首页设计

发布公告显示,Laravel 9 是下一个长期支持版本 (LTS),在 2024 年 2 月之前都会接收到错误修复,在 2025 年 2 月之前则是安全修复。此外,从 Laravel 9 开始,Laravel 的发布周期也有所改变:大约每十二个月发布一个新的主要版本,而不是之前的六个月。原因如下:

Laravel 使用了许多由社区驱动的工具包以及九个 Symfony 组件来实现框架内的许多功能。Symfony 6.0 将于 11 月发布。出于这个原因,我们选择将 Laravel 9.0 的发布推迟到 2022 年。

通过延迟发布,我们可以将我们的底层 Symfony 组件升级到 Symfony 6.0,而不必被迫等到 2022 年 9 月才能执行此升级。此外,这也更好地为我们未来的发布做好了准备,因为我们的年度发布总是在 Symfony 发布后两个月进行。

Laravel 9 主要新功能:

  • 使用的 PHP 版本最低要求是 PHP 8
  • 为 routes:list 引入新设计
  • 新增 --coverage 测试选项,可直接在终端显示覆盖率
  • 默认使用匿名存根迁移 (Anonymous Stub Migrations)
  • 新的查询器构建接口
  • 支持 PHP 8 字符串函数
  • 将邮件功能从 SwiftMailer 迁移至 Symfony Mailer
  • Flysystem 3.x
  • 优化 Eloquent 访问器/修改器
  • 使用 Enums (PHP 8.1) 的隐式路由绑定
  • 控制器路由组
  • Enum Eloquent 属性转换
  • 强制范围绑定
  • Laravel Breeze API & Next.js
  • Laravel Scout 数据库引擎
  • 全文索引 / Where 子句
  • 渲染内联 Blade 模板
  • Soketi Echo 服务器
  • 可选的 Bootstrap 5 分页视图
  • 优化 Ignition 异常页面
  • 新的 str() 和 to_route() 辅助函数

这些只是 Laravel 9 中的一些新功能,要查看完整列表,请查看 Laravel 9 发行说明 以及 升级指南。此外,如果你想要一个简单的更新方式可以参考 Laravel Shift 。