发行说明

未匹配的标注
本文档最新版为 12.x,旧版本可能放弃维护,推荐阅读最新版!

发行说明

版本方案

Laravel 及其所有官方组件遵循 语义化版本控制。框架主版本每年发布一次(约在 Q1),而次要版本和补丁版本可能每周发布一次。次要版本和补丁版本绝不包含破坏性变更。

在引用 Laravel 框架或其组件时,应始终使用诸如 ^13.0 这样的版本约束,因为 Laravel 的主版本可能包含破坏性变更。不过,我们始终努力确保你可以在一天之内完成主版本升级。

命名参数

命名参数不受 Laravel 向后兼容性策略的约束。为了改进 Laravel 代码结构,我们可能会在必要时重命名函数参数。因此,在调用 Laravel 方法时使用命名参数应谨慎,并理解参数名称可能会在将来发生变化。

支持策略

对于所有 Laravel 版本,Bug 修复提供 18 个月的支持,安全修复提供 2 年的支持。对于所有附加组件库,只有最新的主版本会得到 Bug修复。此外,请查阅 Laravel 文档中支持的数据库版本

版本 PHP 版本(*) 发布日期 错误修复截止日期 安全修复截止日期
10 8.1 – 8.3 2023年2月14日 2024年8月6日 2025年2月4日
11 8.2 – 8.4 2024年3月12日 2025年9月3日 2026年3月12日
12 8.2 – 8.5 2025年2月24日 2026年8月13日 2027年2月24日
13 8.3 – 8.5 2026年3月17日 2027年第三季度 2028年3月17日
生命周期结束
仅提供安全修复

(*) 支持的 PHP 版本

Laravel 13

Laravel 13 延续了 Laravel 的年度发布节奏,重点聚焦 AI 原生工作流、更强的默认设置以及更具表现力的开发者 API。此版本包含第一方 AI 原语、JSON:API 资源、语义 / 向量搜索功能,并在队列、缓存和安全性方面带来了增量改进。

极少的破坏性变更

在此发布周期中,我们的主要精力放在了尽量减少破坏性变更上。相反,我们致力于全年持续交付不破坏现有应用的质量改进。

因此,Laravel 13 在升级所需的工作量上相对较小,同时仍提供了大量的新能力。有鉴于此,大多数 Laravel 应用可以在无需大量修改应用代码的情况下升级到 Laravel 13。

PHP 8.3

Laravel 13.x 要求最低 PHP 版本为 8.3。

Laravel AI SDK

Laravel 13 引入了第一方 Laravel AI SDK,为文本生成、工具调用代理、嵌入、音频、图像和向量存储集成提供了统一的 API。

借助 AI SDK,你可以构建与提供商无关的 AI 功能,同时保持一致的原生 Laravel 开发体验。

例如,一个基本代理可以通过一次调用进行提示:

use App\Ai\Agents\SalesCoach;

$response = SalesCoach::make()->prompt('Analyze this sales transcript...');

return (string) $response;

Laravel AI SDK 还可以生成图像、音频和嵌入:

对于视觉生成用例,SDK 提供了简洁的 API,可通过自然语言提示创建图像:

use Laravel\Ai\Image;

$image = Image::of('A donut sitting on the kitchen counter')->generate();

$rawContent = (string) $image;

对于语音体验,你可以从文本中合成自然流畅的音频,用于语音助手、旁白和无障碍功能:

use Laravel\Ai\Audio;

$audio = Audio::of('I love coding with Laravel.')->generate();

$rawContent = (string) $audio;

对于语义搜索和检索工作流,你可以直接从字符串生成嵌入:

use Illuminate\Support\Str;

$embeddings = Str::of('Napa Valley has great wine.')->toEmbeddings();

JSON:API 资源

Laravel 现在包含第一方 JSON:API 资源,可轻松返回符合 JSON:API 规范的响应。

JSON:API 资源负责处理资源对象序列化、关系包含、稀疏字段集、链接以及符合 JSON:API 的响应头。

请求伪造保护

在安全方面,Laravel 的请求伪造保护中间件已得到增强并正式命名为 PreventRequestForgery,增加了基于来源的请求验证,同时保持与基于令牌的 CSRF 保护兼容。

队列路由

Laravel 13 通过 Queue::route(...) 增加了按类进行队列路由的功能,允许你在一个中心位置为特定任务定义默认的队列 / 连接路由规则:

Queue::route(ProcessPodcast::class, connection: 'redis', queue: 'podcasts');

扩展的 PHP 属性

Laravel 13 继续在整个框架中扩展第一方 PHP 属性的支持,使常见的配置和行为关注点更具声明性,并与你的类和方法放在一起。

值得注意的新增内容有控制器和授权属性,如 #[Middleware]#[Authorize],以及面向队列的任务控制属性,如 #[Tries]#[Backoff]#[Timeout]#[FailOnTimeout]

举个例子,现在你可以直接在类的方法中声明控制器中间件和策略检查了:

<?php

namespace App\Http\Controllers;

use App\Models\Comment;
use App\Models\Post;
use Illuminate\Routing\Attributes\Controllers\Authorize;
use Illuminate\Routing\Attributes\Controllers\Middleware;

#[Middleware('auth')]
class CommentController
{
    #[Middleware('subscribed')]
    #[Authorize('create', [Comment::class, 'post'])]
    public function store(Post $post)
    {
        // ...
    }
}

附加属性在 Eloquent,事件,通知,校验,测试和资源序列化 API 中同样可用,这为你提供了一个在框架更多地方可用的属性优先的选择。

缓存 TTL 扩展

Laravel 引入了 Cache::touch(...) 方法, 它使你可以延长现有的缓存项目而无需重新检索和存储。

语义化 /向量搜索

Laravel 13 运用原生支持的向量搜索, Embedding 工作流和 搜索查询AI SDK 文档中相关的 API 深化其语义搜索功能。

这些功能使得基于 PostgreSQL + pgvector 构建 AI 赋能搜索的体验更简洁直接 ,比如对直接从字符串生成的 Embedding 进行相似性搜索。

比如,你可以直接从查询构造器发起语义相似性搜索:

$documents = DB::table('documents')
    ->whereVectorSimilarTo('embedding', 'Best wineries in Napa Valley')
    ->limit(10)
    ->get();

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/laravel/13.x/re...

译文地址:https://learnku.com/docs/laravel/13.x/re...

上一篇 下一篇
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
贡献者:4
讨论数量: 8
发起讨论 只看当前版本


AIR
get: fn 这是什么语法? js中才有吧?
0 个点赞 | 4 个回复 | 问答 | 课程版本 9.x
Sher
请教下本站文档设计实现。
0 个点赞 | 4 个回复 | 问答 | 课程版本 8.5
jianghushusheng
短信频率
0 个点赞 | 3 个回复 | 代码速记 | 课程版本 8.x
xiwang6428
9版本不是LTS?
0 个点赞 | 2 个回复 | 问答 | 课程版本 9.x
小红
七牛云存储
0 个点赞 | 0 个回复 | 代码速记 | 课程版本 8.x
kang_lin
exce数据导出
0 个点赞 | 0 个回复 | 代码速记 | 课程版本 7.x
killthat
composer require symfony/r-http-message-bridge
0 个点赞 | 0 个回复 | 代码速记 | 课程版本 8.x