PHP 8.3 成为最低版本要求Laravel 13 放弃了对 PHP 8.2 的支持现在要求 PHP 8.3 或更高版本。PHP 8.3 带来了类型化类常量、改进的json_validate()、只读属性增强以及 JIT 优化。Laravel 13 同步移除了原本仅为兼容 PHP 8.2 而保留的 polyfill 和向后兼容代码使框架更精简、更快速。对 PHP Attributes 的一等支持这是 Laravel 13 面向开发者最大的改进在框架多个位置引入了原生 PHP Attributes 语法。// 模型示例 #[Table(users, key: user_id, keyType: string, incrementing: false)] #[Hidden([password])] #[Fillable([name, email])] class User extends Model {}此前需要通过类属性配置的行为现在可以直接用 Attribute 内联声明模型Models队列任务Jobs控制台命令Console commands以及 15 处以上其他位置该功能完全可选且向后兼容现有代码无需修改。Laravel AI SDKLaravel 13 引入了官方出品的 Laravel AI SDK提供统一 API涵盖文本生成、工具调用 Agent、Embeddings、音频、图像以及向量存储集成。该 SDK 随 Laravel 13 正式从 Beta 转为稳定版具备完整的队列支持、错误处理以及符合 Laravel 惯例的 API 设计。JSON:API ResourcesLaravel 现在内置了官方 JSON:API Resources可以方便地返回符合 JSON:API 规范的响应。JSON:API Resources 处理资源对象序列化、关联关系包含relationship inclusion、稀疏字段集sparse fieldsets、链接links以及符合 JSON:API 规范的响应头。Queue RoutingLaravel 13 通过Queue::route(...)支持按 Job 类名进行队列路由可以在统一位置为特定 Job 定义默认的队列和连接规则Queue::route(ProcessPodcast::class, connection: redis, queue: podcasts);语义搜索 / 向量搜索Laravel 13 内置了原生向量查询支持、Embedding 工作流以及跨搜索、查询构造器和 AI SDK 的相关 API。这些功能让基于 PostgreSQL pgvector 构建 AI 驱动的搜索体验变得直接包括针对字符串直接生成 Embedding 并进行相似度搜索。例如可以直接通过查询构造器运行语义相似度搜索$documents DB::table(documents) -whereVectorSimilarTo(embedding, Best wineries in Napa Valley) -limit(10) -get();Cache::touch()新增了Cache::touch()方法可以在不读取或重新写入缓存值的情况下延长 TTL// 按秒延长 Cache::touch(user_session:123, 3600); // 按 DateTime 延长 Cache::touch(analytics_data, now()-addHours(6)); // 永久延长 Cache::touch(report_cache, null);此前延长 TTL 需要先get再put会造成不必要的网络传输。Cache::touch()跳过了这一环节——Redis 使用单条EXPIRE命令Memcached 使用TOUCH数据库驱动执行单条UPDATE。该方法成功时返回true键不存在时返回false。已在所有缓存驱动中实现Array、APC、Database、DynamoDB、File、Memcached、Memoized、Null 和 Redis。该特性对滑动会话过期、活跃订阅窗口、热门仪表盘数据、API 速率限制窗口等高频延期场景尤为实用。Reverb 数据库驱动不依赖 Redis 的实时通信此前横向扩展 Laravel Reverb 需要 Redis 作为消息代理。Laravel 13 引入了数据库驱动允许使用现有的 MySQL 或 PostgreSQL 数据库实现横向扩展无需额外部署 Redis。Passkey 认证Passkey基于 WebAuthn 的无密码认证现已集成至 Laravel 的 Starter Kits 和 Fortify。用户可通过生物识别Face ID、指纹或硬件密钥完成认证无需密码。新建的 Laravel 13 应用开箱即用无需第三方包。Teams 支持回归 Starter KitsJetstream 曾提供团队多租户功能但新版 Starter Kits 中缺失了这一支持。Laravel 13 将基于团队的多租户功能带回官方 Starter Kits实现更简洁优于 Jetstream 的旧方案。其他改进MySQL DELETE…JOIN 支持 ORDER BY / LIMITLaravel 的 MySQL 语法编译器现在支持完整的DELETE…JOIN查询包含ORDER BY和LIMIT子句。此前这两个子句会被静默忽略开发者不得不为复杂删除操作编写原始 SQL。HTTP Pool 并发默认值修复此前Http::pool()的并发数默认为null导致池中的请求实际串行执行——这是一个容易忽视的陷阱。Laravel 13 将默认并发数调整为2确保池化请求开箱即用地并发执行。Symfony 7.4 和 8.0 支持Laravel 13 支持 Symfony 7.4 和 8.0保持依赖链的现代化与前瞻性。Laravel 13 支持时间线遵循 Laravel 既定的支持策略Laravel 13 将接受 Bug 修复至 2027 年第三季度安全更新至 2028 年第一季度版本PHP (*)发布时间Bug 修复至安全修复至108.1 - 8.32023 年 2 月 14 日2024 年 8 月 6 日2025 年 2 月 4 日118.2 - 8.42024 年 3 月 12 日2025 年 9 月 3 日2026 年 3 月 12 日128.2 - 8.52025 年 2 月 24 日2026 年 8 月 13 日2027 年 2 月 24 日138.3 - 8.52026 年第一季度2027 年第三季度2028 年第一季度Laravel 12 于 2025 年 2 月 24 日发布将继续接受Bug 修复至 2026 年 8 月 13 日安全修复至 2027 年 2 月 24 日升级到 Laravel 13Laravel 13 提供了多种升级方式。使用 Laravel BoostAI 辅助升级Laravel Boost 是 Laravel 官方出品的 MCP Server为 AI 编程助手提供引导式升级提示。在任意 Laravel 12 项目中安装后在 Claude Code、Cursor、OpenCode、Gemini 或 VS Code 中执行/upgrade-laravel-13斜杠命令即可开始升级流程。使用 Laravel Shift自动化 PR
Laravel 13 正式发布 使用 Laravel AI 无缝平滑升级
PHP 8.3 成为最低版本要求Laravel 13 放弃了对 PHP 8.2 的支持现在要求 PHP 8.3 或更高版本。PHP 8.3 带来了类型化类常量、改进的json_validate()、只读属性增强以及 JIT 优化。Laravel 13 同步移除了原本仅为兼容 PHP 8.2 而保留的 polyfill 和向后兼容代码使框架更精简、更快速。对 PHP Attributes 的一等支持这是 Laravel 13 面向开发者最大的改进在框架多个位置引入了原生 PHP Attributes 语法。// 模型示例 #[Table(users, key: user_id, keyType: string, incrementing: false)] #[Hidden([password])] #[Fillable([name, email])] class User extends Model {}此前需要通过类属性配置的行为现在可以直接用 Attribute 内联声明模型Models队列任务Jobs控制台命令Console commands以及 15 处以上其他位置该功能完全可选且向后兼容现有代码无需修改。Laravel AI SDKLaravel 13 引入了官方出品的 Laravel AI SDK提供统一 API涵盖文本生成、工具调用 Agent、Embeddings、音频、图像以及向量存储集成。该 SDK 随 Laravel 13 正式从 Beta 转为稳定版具备完整的队列支持、错误处理以及符合 Laravel 惯例的 API 设计。JSON:API ResourcesLaravel 现在内置了官方 JSON:API Resources可以方便地返回符合 JSON:API 规范的响应。JSON:API Resources 处理资源对象序列化、关联关系包含relationship inclusion、稀疏字段集sparse fieldsets、链接links以及符合 JSON:API 规范的响应头。Queue RoutingLaravel 13 通过Queue::route(...)支持按 Job 类名进行队列路由可以在统一位置为特定 Job 定义默认的队列和连接规则Queue::route(ProcessPodcast::class, connection: redis, queue: podcasts);语义搜索 / 向量搜索Laravel 13 内置了原生向量查询支持、Embedding 工作流以及跨搜索、查询构造器和 AI SDK 的相关 API。这些功能让基于 PostgreSQL pgvector 构建 AI 驱动的搜索体验变得直接包括针对字符串直接生成 Embedding 并进行相似度搜索。例如可以直接通过查询构造器运行语义相似度搜索$documents DB::table(documents) -whereVectorSimilarTo(embedding, Best wineries in Napa Valley) -limit(10) -get();Cache::touch()新增了Cache::touch()方法可以在不读取或重新写入缓存值的情况下延长 TTL// 按秒延长 Cache::touch(user_session:123, 3600); // 按 DateTime 延长 Cache::touch(analytics_data, now()-addHours(6)); // 永久延长 Cache::touch(report_cache, null);此前延长 TTL 需要先get再put会造成不必要的网络传输。Cache::touch()跳过了这一环节——Redis 使用单条EXPIRE命令Memcached 使用TOUCH数据库驱动执行单条UPDATE。该方法成功时返回true键不存在时返回false。已在所有缓存驱动中实现Array、APC、Database、DynamoDB、File、Memcached、Memoized、Null 和 Redis。该特性对滑动会话过期、活跃订阅窗口、热门仪表盘数据、API 速率限制窗口等高频延期场景尤为实用。Reverb 数据库驱动不依赖 Redis 的实时通信此前横向扩展 Laravel Reverb 需要 Redis 作为消息代理。Laravel 13 引入了数据库驱动允许使用现有的 MySQL 或 PostgreSQL 数据库实现横向扩展无需额外部署 Redis。Passkey 认证Passkey基于 WebAuthn 的无密码认证现已集成至 Laravel 的 Starter Kits 和 Fortify。用户可通过生物识别Face ID、指纹或硬件密钥完成认证无需密码。新建的 Laravel 13 应用开箱即用无需第三方包。Teams 支持回归 Starter KitsJetstream 曾提供团队多租户功能但新版 Starter Kits 中缺失了这一支持。Laravel 13 将基于团队的多租户功能带回官方 Starter Kits实现更简洁优于 Jetstream 的旧方案。其他改进MySQL DELETE…JOIN 支持 ORDER BY / LIMITLaravel 的 MySQL 语法编译器现在支持完整的DELETE…JOIN查询包含ORDER BY和LIMIT子句。此前这两个子句会被静默忽略开发者不得不为复杂删除操作编写原始 SQL。HTTP Pool 并发默认值修复此前Http::pool()的并发数默认为null导致池中的请求实际串行执行——这是一个容易忽视的陷阱。Laravel 13 将默认并发数调整为2确保池化请求开箱即用地并发执行。Symfony 7.4 和 8.0 支持Laravel 13 支持 Symfony 7.4 和 8.0保持依赖链的现代化与前瞻性。Laravel 13 支持时间线遵循 Laravel 既定的支持策略Laravel 13 将接受 Bug 修复至 2027 年第三季度安全更新至 2028 年第一季度版本PHP (*)发布时间Bug 修复至安全修复至108.1 - 8.32023 年 2 月 14 日2024 年 8 月 6 日2025 年 2 月 4 日118.2 - 8.42024 年 3 月 12 日2025 年 9 月 3 日2026 年 3 月 12 日128.2 - 8.52025 年 2 月 24 日2026 年 8 月 13 日2027 年 2 月 24 日138.3 - 8.52026 年第一季度2027 年第三季度2028 年第一季度Laravel 12 于 2025 年 2 月 24 日发布将继续接受Bug 修复至 2026 年 8 月 13 日安全修复至 2027 年 2 月 24 日升级到 Laravel 13Laravel 13 提供了多种升级方式。使用 Laravel BoostAI 辅助升级Laravel Boost 是 Laravel 官方出品的 MCP Server为 AI 编程助手提供引导式升级提示。在任意 Laravel 12 项目中安装后在 Claude Code、Cursor、OpenCode、Gemini 或 VS Code 中执行/upgrade-laravel-13斜杠命令即可开始升级流程。使用 Laravel Shift自动化 PR