dooaki/container

容器操作实用工具

0.0.4 2014-12-24 12:05 UTC

This package is not auto-updated.

Last update: 2024-09-24 03:08:04 UTC


README

Build Status Coverage Status

数据容器操作实用工具。

目前仅包括用于惰性评估的实用工具。

要求

  • PHP 5.5 或更高版本

安装

您可以使用 Composer 安装脚本。在您的 composer.json 文件中

{
    "require": {
        "dooaki/container": "0.0.*"
    }
}

并运行 composer install

参考

dooaki\Container\Lazy\Enumerable

###概述

<?php

use dooaki\Container\Lazy\Enumerable;

class CountUp
{
    use Enumerable;

    public function each()
    {
        $i=0;
        while(1) {
            yield ++$i;
        }
    }
}

print_r((new CountUp())->take(3)->toArray());
// Array
// (
//     [0] => 1
//     [1] => 2
//     [2] => 3
// )

dooaki\Container\Lazy\Enumerator

###概述

<?php

use dooaki\Container\Lazy\Enumerator;

function infinity() {
    $i = 0;
    while (++$i) {
        yield $i;
    }
}

$e = new Enumerator(function () { return infinity(); });

// Enumerator use Enumerable
$e->skip(10)
    ->select(function ($i) { return $i % 2; })
    ->take(5)
    ->each(function ($i) { echo $i, ' '; }); // 11 13 15 17 19


$a = Enumerator::from([1,2,3])
    ->map(functino($v) { return $v * 2 })
    ->toArray();
print_r($a);
/*
Array
(
    [0] => 2
    [1] => 4
    [2] => 6
)
*/

文档

请参阅 API 文档

许可

MIT 许可证