wazsmwazsm / kit
通用工具箱
v1.0
2019-05-07 10:06 UTC
Requires
- php: >=5.5
Requires (Dev)
- phpunit/phpunit: ~4.0
This package is not auto-updated.
Last update: 2024-09-18 12:44:12 UTC
README
工具箱,包含一些常用工具。
安装
composer require wazsmwazsm/kit
工具
DotArr
使用 a.b.c 格式的字符串作为数组的路径存储一个值。
设置:
use Kit\DotArr; $arr = []; DotArr::dotSet($arr, 'foo.bar', 'hello'); var_dump($arr); // result is ['foo' => ['bar' => 'hello']]
读取:
use Kit\DotArr; $arr = ['foo' => ['bar' => 'hello']]; $result = DotArr::dotGet($arr, 'foo.bar'); var_dump($result); // result is hello $result = DotArr::dotGet($arr, 'foo'); var_dump($result); // result is ['bar' => 'hello'] // 获取值不存在返回默认值 $result = DotArr::dotGet($arr, 'a.b', 'd'); var_dump($result); // result is d
判断值是否存在:
use Kit\DotArr; $arr = ['foo' => ['bar' => 'hello']]; $result = DotArr::dotHas($arr, 'foo.bar'); var_dump($result); // result is true $result = DotArr::dotHas($arr, 'a.b'); var_dump($result); // result is false
自定义分隔符:
use Kit\DotArr; DotArr::setOperator('/'); $arr = []; DotArr::dotSet($arr, 'foo/bar', 'hello'); $result = DotArr::dotGet($arr, 'foo/bar'); var_dump($result); // result is hello
Pipeline
管道模式,将载荷送入管道,流过每一节管道,返回结果。
使用:
use Kit\Pipeline; $pipes = [ function($payload) { return $payload + 1; }, function($payload) { return $payload + 2; }, function($payload) { return $payload + 3; }, ]; // 初始化时设置管道 $pipe = new Pipeline($pipes); // 添加管道 $pipe->pipe(function($payload) { return $payload + 4; }); // 运行管道 $result = $pipe->flow(12); var_dump($result); // result is 22
许可证
该工具箱是开源软件,许可协议为 MIT 许可协议。