vakata / collection
PHP 集合操作类 - 支持迭代器和生成器
1.8.4
2024-08-06 12:30 UTC
Requires
- php: >=8.0
Requires (Dev)
- phpunit/phpunit: ~9.0
README
一个用于快速操作可迭代对象的 PHP 类(数组、生成器、迭代器)。
所有断言/修改器调用者都会接收到当前值、当前键以及整个集合作为参数。
map
和 filter
不会立即执行,而是堆叠起来,直到你需要获取值时(调用 squash
、toArray
、value
)。尽可能使用 map
和 filter
以减少内存使用。这意味着可以在保持最小内存占用的情况下逐行读取大文件。
安装
通过 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)。有关更多信息,请参阅 许可文件。