dragk / array-class
轻量级的PHP包,用于处理数组,就像在JavaScript或C#中一样。以不可变优先。类似集合。
1.3.1
2018-10-02 14:39 UTC
Requires
- php: >=7.0.0
Requires (Dev)
- phpunit/phpunit: ^5
This package is auto-updated.
Last update: 2024-09-06 09:54:52 UTC
README
轻量级的PHP包,用于处理数组,类似于JavaScript或C#中的数组对象(但更适合PHP),因此您可以例如链式调用方法。以不可变优先。类似集合。
项目构建时考虑到,这个库需要
- 轻量级
- 快速
- 全面测试
- 严格类型化以提高安全性
- 有文档
- 类似于JavaScript/C#数组对象
安装
使用以下命令安装最新版本:
$ composer require dragk/array-class
基本用法
<?php use DragK\ArrayClass; $array = new ArrayClass([1, 3, 2, 4]); $result = $array ->sort() ->reverse() ->map(function($value){ return $value**2; }) ->filter(function($value) { return $value > 8 ; }) ->reduce(function($result, $value) { return $result + $value; }); var_dump($result); // int(25) echo $array[1]; // 3
请记住,您始终可以使用 function () use ($var1, $varN) 来向函数传递更多变量,例如。
$multiplier = 2; $result = $array ->sort() ->reverse() ->map(function($value){ return $value**2; }) ->filter(function($value) { return $value > 8 ; }) ->reduce(function($result, $value) use ($multiplier) { return ($result + $value) * $multiplier; }); echo $result; // 82
文档
关于
要求
- PHP 7.0或更高版本
提交建议
错误、功能请求和代码风格/方法提示在GitHub上跟踪
许可证
ArrayClass遵循MIT许可证 - 有关详细信息,请参阅LICENSE文件
致谢
这个库灵感来源于JavaScript Array对象,尽管大多数概念都已调整以适应PHP世界。