werxe / laravel-collection-macros
自定义Laravel Collection宏。
v8.0.0
2023-07-22 11:02 UTC
Requires
- php: ^8.2
- illuminate/support: ^10.0
Requires (Dev)
- bamarni/composer-bin-plugin: ^1.4
- orchestra/testbench: ^8.0
- phpunit/phpunit: ^9.0
- werxe/php-cs-fixer-config: ^2.0
README
Laravel 9的自定义Laravel Collection宏。
此包符合PHP FIG标准PSR-1、PSR-2和PSR-4,以确保共享PHP之间的高度互操作性。如果您注意到任何合规性问题,请通过pull request发送补丁。
版本矩阵
入门
通过运行以下命令通过Composer安装包:
composer require werxe/laravel-collection-macros
默认情况下,所有宏都已启用,宏名称是宏类的小写版本。
如果您想自定义启用的宏或只是重命名宏名称,可以通过发布配置文件来完成,运行:
php artisan vendor:publish --tag="werxe:collection-macros.config"
配置文件现在发布在config/werxe/collection-macros/config.php
。
文档
可用的宏
increment
在Collection内部递增一个值
$collection = collect([ 'total' => 1, ]); $collection->increment('total', 2); // 3
decrement
在Collection内部递减一个值
$collection = collect([ 'total' => 3, ]); $collection->decrement('total', 2); // 1
ksort
按键对Collection进行排序。
$collection = collect(['d' => 'lemon', 'a' => 'orange', 'b' => 'banana', 'c' => 'apple']); $collection->ksort(); // ['a' => 'orange', 'b' => 'banana', 'c' => 'apple', 'd' => 'lemon']
krsort
按键的逆序对Collection进行排序
$collection = collect(['d' => 'lemon', 'a' => 'orange', 'b' => 'banana', 'c' => 'apple']); $collection->krsort(); // ['d' => 'lemon', 'c' => 'apple', 'b' => 'banana', 'a' => 'orange']
recursive
递归地将嵌套数组转换为Laravel Collections。
$collection = collect([ 'name' => 'John Doe', 'emails' => [ 'john@doe.com', 'john.doe@example.com', ], 'contacts' => [ [ 'name' => 'Richard Tea', 'emails' => [ 'richard.tea@example.com', ], ], ], ]); // Convert the nested arrays into Collections $convertedCollection = $collection->recursive(); // Get the contacts as a Collection $contacts = $convertedCollection->get('contacts');
贡献
感谢您对Laravel Collection Macros的兴趣。以下是一些贡献的多种方式。
安全
如果您发现任何安全相关问题,请通过电子邮件security@werxe.com报告,而不是使用问题跟踪器。
许可证
Laravel Collection Macros采用MIT许可证(MIT)。有关更多信息,请参阅许可证文件。