vakata/collection

PHP 集合操作类 - 支持迭代器和生成器

1.8.4 2024-08-06 12:30 UTC

This package is auto-updated.

Last update: 2024-09-06 12:37:28 UTC


README

Latest Version on Packagist Software License Build Status Scrutinizer Code Quality Code Coverage

一个用于快速操作可迭代对象的 PHP 类(数组、生成器、迭代器)。

所有断言/修改器调用者都会接收到当前值、当前键以及整个集合作为参数。

mapfilter 不会立即执行,而是堆叠起来,直到你需要获取值时(调用 squashtoArrayvalue)。尽可能使用 mapfilter 以减少内存使用。这意味着可以在保持最小内存占用的情况下逐行读取大文件。

安装

通过 Composer

composer require vakata/collection

用法

$collection = \vakata\collection\Collection::from([1,2,3,4,5,6]);
$result = $collection
    ->filter(function ($v) { return $v % 2 === 0; })
    ->map(function ($v) { return $v + 1; })
    ->head(2)
    ->toArray();

API 文档 中了解更多

测试

composer test

贡献

请参阅 CONTRIBUTING 了解详情。

安全

如果您发现任何安全问题,请通过电子邮件 github@vakata.com 联系我们,而不是使用问题跟踪器。

鸣谢

非常感谢 im0rtality 和优秀的 Underscore 包

许可协议

MIT 许可协议(MIT)。有关更多信息,请参阅 许可文件