Laravel 10.24 发布

本周,Laravel 团队发布了 v10.24,其中包括任务伪造更新、字符串位置助手、迁移表名称预测改进等功能。

虽然我们重点介绍了每个版本中的新功能,但是每周都有很多贡献者在改进框架。请查看发行说明以了解每周发布的完整更改,再次感谢所有为 Laravel 做出贡献的人。

以下是本周的最新动态一览:

允许伪造旧式任务

Tim MacDonald 贡献了一个更新,此更新允许推送旧式风格的队列任务:

旧式风格的队列任务推送(即引用任务类并将载荷通过数组格式传递)目前是不支持的。这项措施解决了以下问题::

Queue::fake([MyJob::class]);
Queue::push(MyJob::class, ['job' => 'payload']);
Queue::assertPushed(MyJob::class);

Str::substrPos() 方法介绍

Clemens Bastian 贡献了一个 substrPos() 方法,用其确定子字符串在字符串中第一次出现的位置. 它是对PHP中 mb_strpos 方法的封装:

// Str helper
Str::position('Hello, World!', 'W'); // 7

// Stringable
str('This is a test string.')->position('test'); // 10

// More examples
Str::position('This is a test string, test again.', 'test', 15); // 23
Str::position('Hello, World!', 'Hello'); // 0
Str::position('Hello, World!', 'World!'); // 7
Str::position('This is a tEsT string.', 'tEsT', 0, 'UTF-8'); // 10
Str::position('Hello, World!', 'W', -6); // 7
Str::position('Äpfel, Birnen und Kirschen', 'Kirschen', -10, 'UTF-8'); // 18
Str::position('@%€/=!"][$', '$', 0, 'UTF-8'); // 9
Str::position('Hello, World!', 'w', 0, 'UTF-8'); // false
Str::position('Hello, World!', 'X', 0, 'UTF-8'); // false
Str::position('', 'test'); // false
Str::position('Hello, World!', 'X'); // false

迁移任务中正确预测表名称

Islam Abdelfattah 改进了表名预测器功能(当用户创建迁移任务并修改已存在的数据库表列字段时)。当给定以下以to_users_table结尾的命令时,该命令将为users表创建正确的迁移任务:

php artisan make:migration \   
    add_is_sent_to_3rd_party_service_column_to_users_table

以上命令生成的迁移任务将在up/down方法中自动包含以下代码:

Schema::table('users', function (Blueprint $table) {    
     //
});

发布说明

您可以在下面看到新特性和更新的完整列表,以及 GitHub 上 10.23.0 和 10.24.0 之间的区别。以下发布说明直接来自于变更日志

v10.24.0

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

原文地址:https://laravel-news.com/laravel-10-24-0...

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

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 2
DonnyLiu

好好好,在程序员节这天更新

6个月前 评论
Alone88 6个月前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!