Laravel 10.40 - 包含数字钳位方法、APA 风格助手、Vite 资产路径定制等功能

发布于 作者:

Laravel 10.40 - With a Number Clamp Method, an APA-Style Helper, Vite Asset Path Customization, and More image

Laravel 团队发布了 v10.40 版本,其中包含数字钳位方法、APA 风格标题大小写字符串助手、Vite 资产路径定制等功能。距离 Laravel 11 发布不到一个月,社区正在全力以赴,每周都会提供新的功能、修复和改进。

以下是本周发布的一些新功能

添加数字钳位方法

James Brooks 贡献了一个 Number::clamp() 方法,该方法将给定数字钳位在两个数字之间。这提供了一种将给定数字限制在另外两个数字之间的方式。此方法可以通过一些示例进行最佳说明

Number::clamp(number: 53, min:0, max: 999); // 53
Number::clamp(number: 0.5, min: 0, max: 1); // 0.5
Number::clamp(number: 20, min: 0, max: 1); // 1
Number::clamp(number: 10, min: 20, max: 30); // 20

添加 Session “except” 方法

Volodya Kurshudyan 贡献了一个 except() 方法,用于检索除指定项目数组外的所有会话数据

Session::all(); // 'email' => '[email protected]', 'name' => 'Example User']
Session::except(['name']); // ['email' => '[email protected]']

Schema Builder 是 Macroable 的

Kevin BuiMacroable 特性添加到 schema builder 中,这使得开发人员可以为 schema builder 定义自定义方法。以下是一个拉取请求作者提供的示例

use Illuminate\Database\Schema\Builder;
 
Builder::macro('hasForeignKey', function ($table, $key) {
$foreignKeys = Schema::getForeignKeys($table);
 
foreach ($foreignKeys as $foreignKey) {
if ($foreignKey['name'] == $key) {
return true;
}
}
 
return false;
});

测试空视图的断言

Dwight WatsonTestView 类贡献了一个 assertViewEmpty() 方法。现在你可以断言视图组件的输出是否为空,如下所示

$view = $this->view('welcome', ['name' => 'Example User', 'enabled' => false]);
 
$view->assertViewEmpty();

为 Tailwind 分页添加暗模式支持

Sabin Chackosimple-paginate.blade.phptailwind.blade.php 文件贡献了暗模式支持。有关详细信息,请参见 Pull Request #49515

允许 Vite 资产路径定制

Tim MacDonald 贡献了在更高级的情况下定制 Vite 资产路径的功能,在这些情况下,你无法依赖静态值来获取 app.asset_url,可以使用服务提供者中的以下方法

Vite::createAssetPathsUsing(function ($path, $secure) {
return //...
});

使用 QueueFake 断言作业计数

Volodya KurshudyanQueueFake 贡献了一个 assertCount() 断言

use Illuminate\Support\Facades\Queue;
 
Queue::fake();
Queue::assertNothingPushed();
 
// ...act...
 
Queue::assertCount(3);

APA 风格标题字符串助手

Adam Campbell 贡献了一个 APA 风格标题助手,该助手根据 APA 标题大小写 指南格式化字符串

Str::apa($string);
 
str($string)->apa();

发行说明

你可以在下面看到新功能和更新的完整列表,以及 10.39.0 和 10.40.0 之间的差异,这些信息来自 GitHub。以下发行说明直接来自 变更日志

v10.40.0

Paul Redmond photo

Laravel News 的特约撰稿人。全栈 Web 开发人员和作者。

Cube

Laravel 新闻通讯

加入 40,000 多名其他开发者,不错过任何新的技巧、教程等信息。

Laravel Forge logo

Laravel Forge

轻松创建和管理您的服务器,并在几秒钟内部署您的 Laravel 应用程序。

Laravel Forge
Tinkerwell logo

Tinkerwell

Laravel 开发人员必备的代码运行器。使用 AI、自动完成和本地及生产环境的即时反馈来进行调试。

Tinkerwell
No Compromises logo

No Compromises

Joel 和 Aaron,两位来自 No Compromises 播客的资深开发者,现在可以为您的 Laravel 项目聘用。⬧ 固定费率 7500 美元/月。⬧ 没有冗长的销售流程。⬧ 没有合同。⬧ 100% 退款保证。

No Compromises
Kirschbaum logo

Kirschbaum

提供创新和稳定性,确保您的 Web 应用程序取得成功。

Kirschbaum
Shift logo

Shift

运行旧的 Laravel 版本?即时、自动的 Laravel 升级和代码现代化,使您的应用程序保持新鲜。

Shift
Bacancy logo

Bacancy

只需 2500 美元/月,就可以用一位经验丰富的 Laravel 开发人员(具有 4-6 年经验)为您的项目充电。获得 160 小时的专业技能和 15 天的无风险试用。立即安排通话!

Bacancy
Lucky Media logo

Lucky Media

现在就幸运 - 拥有超过十年的经验,是 Laravel 开发的理想选择!

Lucky Media
Lunar: Laravel E-Commerce logo

Lunar: Laravel 电子商务

Laravel 的电子商务。一个开源软件包,将现代无头电子商务功能的功能带入 Laravel。

Lunar: Laravel 电子商务
LaraJobs logo

LaraJobs

官方 Laravel 工作板

LaraJobs
SaaSykit: Laravel SaaS Starter Kit logo

SaaSykit: Laravel SaaS 启动工具包

SaaSykit 是一个 Laravel SaaS 启动工具包,它包含运行现代 SaaS 所需的所有功能。付款、漂亮结账、管理面板、用户仪表板、身份验证、就绪组件、统计数据、博客、文档等等。

SaaSykit: Laravel SaaS 启动工具包
Rector logo

Rector

您实现无缝 Laravel 升级、降低成本和加速创新的合作伙伴,为成功公司提供服务

Rector
MongoDB logo

MongoDB

使用 MongoDB 和 Laravel 的强大集成来增强您的 PHP 应用程序,使开发人员能够轻松高效地构建应用程序。支持事务性、搜索、分析和移动用例,同时使用熟悉的 Eloquent API。了解 MongoDB 的灵活、现代数据库如何改变您的 Laravel 应用程序。

MongoDB
Maska is a Simple Zero-dependency Input Mask Library image

Maska 是一个简单的零依赖输入掩码库

阅读文章
Add Swagger UI to Your Laravel Application image

将 Swagger UI 添加到您的 Laravel 应用程序

阅读文章
Assert the Exact JSON Structure of a Response in Laravel 11.19 image

在 Laravel 11.19 中断言响应的精确 JSON 结构

阅读文章
Build SSH Apps with PHP and Laravel Prompts image

使用 PHP 和 Laravel 提示构建 SSH 应用程序

阅读文章
Building fast, fuzzy site search with Laravel and Typesense image

使用 Laravel 和 Typesense 构建快速、模糊的网站搜索

阅读文章
Add Comments to your Laravel Application with the Commenter Package image

使用 Commenter 包为您的 Laravel 应用程序添加评论

阅读文章