PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

看看最新发布的Laravel8.78有哪些新功能!

藏色散人
藏色散人 转载
2022-01-18 16:13:22 1424浏览

下面由laravel教程栏目给大家介绍最新发布的laravel 8.78有哪些新功能 ,希望对大家有所帮助!

Laravel 团队发布了 8.78,能够向默认密码验证添加自定义规则、mergeIfMissing() 请求方法、断言测试中的批次计数,以及 v8.x 分支中的最新更改。

定义额外的默认密码验证规则

Ash Allen 贡献了定义自定义验证规则,这些规则将使用 rules() 方法作为默认密码规则的一部分运行:

Password::defaults(function () {
    return Password::min(8)
        ->symbols()
        ->mixedCase()
        ->uncompromised()
        ->rules(new ZxcvbnRule());
});

rules() 方法接受单个规则、规则数组或闭包验证规则的闭包。

如果缺失合并请求数据

David Peach 提供了一个mergeIfMissing() HTTP 请求方法,如果请求中缺少键,该方法会将新输入合并到请求的输入中。

例如,如果您未选中表单复选框,则不会将其发送到服务器。您可能必须编写如下内容:

if ($request->missing('boolean_setting')) {
    $request->merge(['boolean_setting' => 0]);
}

现在,您可以定义在参数缺少时与请求合并的值:

$request->mergeIfMissing(['boolean_setting' => 0])

断言批次数

@Chrysanthos 为 Bus facade 贡献了一个 assertBatchCount() 方法,该方法断言已经调度了多少批次:

Bus::assertBatchCount(3);

HTML 字符串方法

Lars Klopstra 为 Str 和 Stringable 贡献了一个toHtmlString() 方法:

// 之前
new HtmlString(Str::of($content)->markdown());
 // 现在
Str::of($content)
    ->markdown()
    ->html();

发行说明

您可以在 GitHub 上面查看新功能和更新的完整列表以及 8.77.0 和 8.78.0 之间的差异。 以下发行说明直接来自 changelog:

v8.78.0

新增

  • 新增 schedule:clear-mutex 命令 (#40135)
  • 新增了自定密码验证规则的功能 (#40137)
  • 在 Illumbize Http 请求类中添加了一个 mergeIfMissing 方法 (#40116)
  • 新增 Illuminate/Support/MultipleInstanceManager (40913ac)
  • 新增 SimpleMessage::lines() (#40147)
  • 新增 Illuminate/Support/Testing/Fakes/BusFake::assertBatchCount() (#40217)
  • 使用广播驱动程序时仅启用 only-to-others 功能 (#40234)
  • 增加了在 JsonResource 响应上自定义 json 选项的功能 (#40208)
  • 新增 Illuminate/Support/Stringable::toHtmlString() (#40247)

更改

  • 改进对自定义列类型的支持 (#40119)
  • 删除控制台应用程序类中的无用检查 (#40145)
  • 当排序操作的第一个元素是字符串时(即使是可调用的),按键对集合进行排序 (#40212)
  • 如果有多个主机,请使用第一个主机  Illuminate/Database/Console/DbCommand::getConnection() (#40226)
  • 反射器类的改进 (#40241)

修复

  • 调用 Http::fake() 时清除记录 (#40194)
  • 修复属性转换 (#40245, c0d9735)

原文地址:https://laravel-news.com/laravel-8-78-0

译文地址:https://learnku.com/laravel/t/64574

声明:本文转载于:learnku,如有侵犯,请联系admin@php.cn删除