webbhuset / pipeline
数据操作函数库。
v2022.10.18.0
2022-10-18 12:20 UTC
Requires
- php: >=7.0
Requires (Dev)
- giorgiosironi/eris: ^0.13.0
- phpunit/phpunit: >=7
This package is auto-updated.
Last update: 2024-09-18 16:08:58 UTC
README
Pipeline 是一个用于构建可重用值操作函数的 PHP 库。每个 Pipeline 函数都是一个实现了 __invoke() 的类,因此允许实例作为函数运行。每个函数接受一个可遍历对象作为输入,并返回一个生成器。
文档
文档可在 ReadTheDocs 上找到。
示例
<?php use Webbhuset\Pipeline\Constructor as F; $fun = F::Compose([ F::Map('trim'), F::Filter('is_numeric'), F::Map('intval'), F::Drop(2), F::Multiplex( function ($value) { return $value % 10 == 0 ? 'divide' : 'double'; }, [ 'divide' => F::Map(function ($value) { return $value / 10; }), 'double' => F::Map(function ($value) { return $value * 2; }), ] ) ]); $input = [ 1, ' 23 ', 'hello', '4.444', 5.75, '+12e3' ]; echo json_encode(iterator_to_array($fun($input))); // Output: [8,10,1200]