Laravel框架更新了什么功能

wen PHP项目 1

本文目录导读:

Laravel框架更新了什么功能

  1. Laravel 11(2024年3月发布)及后续更新亮点
  2. Laravel 12 前瞻 (传闻/早期迹象,截至2025年5月)
  3. 如何获取最新更新?
  4. 示例:Laravel 11中简化配置
  5. 总结

截至2025年5月,Laravel框架最新稳定版本为 Laravel 11.x(持续更新中),而 Laravel 12 的发布计划或早期预览可能已在开发路线图中,以下基于 Laravel 11 及近期更新的主要功能进行总结,同时覆盖一些前瞻性变化:


Laravel 11(2024年3月发布)及后续更新亮点

默认结构与简化

  • 移除默认目录app/Http/Kernelapp/Exceptions/Handlerapp/Http/Middleware 等文件不再默认生成,改用更轻量的 bootstrap/app.php 配置。
  • 减少默认迁移文件:只保留 userspassword_reset_tokenspersonal_access_tokens 三个表,其他可选。

无框架式SQL、健康检查与任务调度

  • 无框架式SQL:允许在不使用Eloquent ORM的情况下编写原生SQL查询,提升灵活性。
  • 健康检查端点:新增 /up 路由,用于监控应用状态(需配合 Up服务 或第三方监控工具)。
  • 任务调度优化:支持在 routes/console.php 中直接定义调度任务,无需 Kernel 文件。

安全与认证

  • 速率限制中间件:内置 RateLimiter 中间件,支持基于用户、IP、路由等的自定义限流。
  • Passport更新:Passport 12.x 支持更安全的OAuth 2.0实现,并提供新的文档和示例。

数据库与ORM增强

  • Eloquent「负载后」事件:模型加载后触发事件,便于执行后处理逻辑。
  • 原生类型转换:支持 arrayjsonobjectcollection 等类型直接转换,无需自定义 casts
  • 数据库查询日志简化:通过 DB::listen 更易获取SQL执行详情。

队列与异步处理

  • Laravel Horizon改进:UI界面优化,支持更细粒度的作业监控。
  • Vapor集成增强:通过 Laravel Vapor 部署的Serverless应用获得更好的队列管理支持。

测试与开发工具

  • 错误处理优化:新增 withExceptions() 方法,允许在 bootstrap/app.php 中集中定义异常处理逻辑。
  • 测试辅助函数assertDatabaseHasassertDatabaseMissing 等支持更多条件,并优化了错误消息。

Laravel 12 前瞻 (传闻/早期迹象,截至2025年5月)

  • PHP 9.0支持:可能放弃对旧版本PHP的支持,转向PHP 9.0+。
  • 异步HTTP客户端优化:利用PHP原生协程(如 Open SwooleRR)提升并发性能。
  • 重构 Illuminate:部分包可能被拆分或重构,以支持模块化架构。
  • 更直观的迁移生成器:新增 make:migration 命令行交互式生成器。

如何获取最新更新?

  1. 官方更新日志:访问 laravel.com/releases 查看每个版本的详细变更。
  2. GitHub Release Notes:关注 laravel/framework 仓库。
  3. 升级指南:使用 laravel upgrade 命令或参考 官方升级文档

示例:Laravel 11中简化配置

// bootstrap/app.php(替代旧版 config/app.php)
return Application::configure(basePath: dirname(__DIR__))
    ->withRouting(
        web: __DIR__.'/../routes/web.php',
        api: __DIR__.'/../routes/api.php',
        commands: __DIR__.'/../routes/console.php',
        health: '/up',
    )
    ->withMiddleware(function (Middleware $middleware) {
        $middleware->web(prepend: [
            \App\Http\Middleware\HandleInertiaRequests::class,
        ]);
    })
    ->withExceptions(function (Exceptions $exceptions) {
        // 集中定义异常处理
    })->create();

  • 当前重点:Laravel 11 强调简化配置无框架SQL健康检查测试体验
  • 未来方向:性能提升(异步、协程)、模块化、PHP 9.0兼容性。
  • 建议:升级到 Laravel 11.x 以享受最新功能,并密切关注官方公告获取 Laravel 12 的详细信息。

如果需要特定功能的代码示例或升级指导,请告知具体需求!

抱歉,评论功能暂时关闭!