zerifas / collections
PHP 数据集合工具
v1.1.0
2016-11-02 15:18 UTC
Requires
- php: >= 5.5
Requires (Dev)
- phpunit/phpunit: ^4.8
- squizlabs/php_codesniffer: ^2.0
This package is auto-updated.
Last update: 2024-08-29 04:36:59 UTC
README
PHP 数据集合工具。
安装
$ composer require zerifas/collections
用法
使用此库有两种方式
Arr
辅助类,包含静态方法。第一个参数始终是要操作数组。ArrayWrapper
类,它将普通数组包装在ArrayObject
中
Arr
辅助类
获取单个项目
use Zerifas\Collections\Arr; $arr = [ 'key1' => 'value1', 'key2' => 'value2', ]; $item = Arr::get($arr, 'key1'); // 'value1' $item = Arr::get($arr, 'NONE'); // null $item = Arr::get($arr, 'NONE', 'default value'); // 'default value'
过滤和映射
示例
use Zerifas\Collections\Arr; $arr = [ 'key1' => 1, 'key2' => 2, 'key3' => 3, ]; $filtered = Arr::filter($arr, function ($value, $key) { return $key !== 'key1'; }); $mapped = Arr::map($filtered, function ($value, $key) { return 'value ' . $value; }); var_dump($mapped);
输出
array(2) {
'key2' =>
string(7) "value 2"
'key3' =>
string(7) "value 3"
}
ArrayWrapper 类
获取单个项目
use Zerifas\Collections\ArrayWrapper; $arr = new ArrayWrapper([ 'key1' => 'value1', 'key2' => 'value2', ]); $item = $arr->get('key1'); // 'value1' $item = $arr->get('NONE'); // null $item = $arr->get('NONE', 'default value'); // 'default value'
过滤和映射
示例
use Zerifas\Collections\ArrayWrapper; $arr = [ 'key1' => 1, 'key2' => 2, 'key3' => 3, ]; $result = (new ArrayWrapper($arr)) ->filter(function ($value, $key) { return $key !== 'key1'; }) ->map(function ($value, $key) { return 'value ' . $value; }) ->toArray() ; var_dump($result);
输出
array(2) {
'key2' =>
string(7) "value 2"
'key3' =>
string(7) "value 3"
}
您还可以使用 Arr
辅助类包装普通数组
$arr = [1, 2, 3]; $result = Arr::wrap($arr)->filter(function (…) { … })->toArray();