Example #1
0
File: find.php Project: iltar/phpr
<?php

/**
 * Find code sample
 *
 * PHP version 5.5
 *
 * @category Samples
 * @package  PHPR
 * @author   Eustáquio Rangel <*****@*****.**>
 * @license  http://www.gnu.org/copyleft/gpl.html GPL
 * @link     http://github.com/taq/torm
 */
require_once "../../vendor/autoload.php";
$col = new PHPR\Collection(["one", "two", "three"]);
$rst = $col->find(function ($e) {
    return preg_match('/^t/', $e);
});
var_dump($rst);
Example #2
0
<?php

/**
 * Select code sample
 *
 * PHP version 5.5
 *
 * @category Samples
 * @package  PHPR
 * @author   Eustáquio Rangel <*****@*****.**>
 * @license  http://www.gnu.org/copyleft/gpl.html GPL
 * @link     http://github.com/taq/torm
 */
require_once "../../vendor/autoload.php";
$col = new PHPR\Collection(["one", "two", "three"]);
$rst = $col->select(function ($e) {
    return strlen($e) > 3;
});
var_dump($rst->values());
$filtered = array_filter($col->values(), function ($e) {
    return strlen($e) > 3;
});
var_dump($filtered);
Example #3
0
<?php

/**
 * Partition code sample
 *
 * PHP version 5.5
 *
 * @category Samples
 * @package  PHPR
 * @author   Eustáquio Rangel <*****@*****.**>
 * @license  http://www.gnu.org/copyleft/gpl.html GPL
 * @link     http://github.com/taq/torm
 */
require_once "../../vendor/autoload.php";
$col = new PHPR\Collection([1, 2, 3, 4, 5]);
$cols = $col->partition(function ($e) {
    return $e % 2 == 0;
});
echo "even numbers:\n";
var_dump($cols[0]->values());
echo "odd numbers:\n";
var_dump($cols[1]->values());
?>

Example #4
0
<?php

/**
 * Group by code sample
 *
 * PHP version 5.5
 *
 * @category Samples
 * @package  PHPR
 * @author   Eustáquio Rangel <*****@*****.**>
 * @license  http://www.gnu.org/copyleft/gpl.html GPL
 * @link     http://github.com/taq/torm
 */
require_once "../../vendor/autoload.php";
$col = new PHPR\Collection(["one", "two", "three"]);
var_dump($col->groupBy(function ($e) {
    return strlen($e);
}));
Example #5
0
File: sort.php Project: iltar/phpr
<?php

/**
 * Sort code sample
 *
 * PHP version 5.5
 *
 * @category Samples
 * @package  PHPR
 * @author   Eustáquio Rangel <*****@*****.**>
 * @license  http://www.gnu.org/copyleft/gpl.html GPL
 * @link     http://github.com/taq/torm
 */
require_once "../../vendor/autoload.php";
$col = new PHPR\Collection(["one", "two", "three"]);
var_dump($col->sort()->values());
Example #6
0
File: each.php Project: iltar/phpr
<?php

/**
 * Each code sample
 *
 * PHP version 5.5
 *
 * @category Samples
 * @package  PHPR
 * @author   Eustáquio Rangel <*****@*****.**>
 * @license  http://www.gnu.org/copyleft/gpl.html GPL
 * @link     http://github.com/taq/torm
 */
require_once "../../vendor/autoload.php";
$col = new PHPR\Collection(["one", "two", "three"]);
// no associative
$col->each(function ($e) {
    echo "{$e}\n";
});
// associative
$col->each(function ($key, $val) {
    echo "{$key} = {$val}\n";
});
Example #7
0
<?php

/**
 * Min and max code sample
 *
 * PHP version 5.5
 *
 * @category Samples
 * @package  PHPR
 * @author   Eustáquio Rangel <*****@*****.**>
 * @license  http://www.gnu.org/copyleft/gpl.html GPL
 * @link     http://github.com/taq/torm
 */
require_once "../../vendor/autoload.php";
$col = new PHPR\Collection(["one", "two", "three"]);
echo "Min is {$col->min()}\n";
echo "Max is {$col->max()}\n";
Example #8
0
File: all.php Project: iltar/phpr
<?php

/**
 * All code sample
 *
 * PHP version 5.5
 *
 * @category Samples
 * @package  PHPR
 * @author   Eustáquio Rangel <*****@*****.**>
 * @license  http://www.gnu.org/copyleft/gpl.html GPL
 * @link     http://github.com/taq/torm
 */
require_once "../../vendor/autoload.php";
$col = new PHPR\Collection(["one", "two", "three"]);
echo "all elements are larger than 2 chars? " . ($col->all(function ($e) {
    return strlen($e) > 2;
}) ? "YES" : "NO") . "\n";
echo "all elements are larger than 3 chars? " . ($col->all(function ($e) {
    return strlen($e) > 3;
}) ? "YES" : "NO") . "\n";
?>

Example #9
0
<?php

/**
 * Min and max code sample
 *
 * PHP version 5.5
 *
 * @category Samples
 * @package  PHPR
 * @author   Eustáquio Rangel <*****@*****.**>
 * @license  http://www.gnu.org/copyleft/gpl.html GPL
 * @link     http://github.com/taq/torm
 */
require_once "../../vendor/autoload.php";
$col = new PHPR\Collection([1, 2, 3, 4, 5]);
echo "sum is " . $col->inject(function ($memo, $value) {
    return $memo + $value;
}) . "\n";
echo "sum is " . $col->inject(function ($memo, $value) {
    return $memo + $value;
}, 10) . "\n";
Example #10
0
File: map.php Project: iltar/phpr
<?php

/**
 * Map code sample
 *
 * PHP version 5.5
 *
 * @category Samples
 * @package  PHPR
 * @author   Eustáquio Rangel <*****@*****.**>
 * @license  http://www.gnu.org/copyleft/gpl.html GPL
 * @link     http://github.com/taq/torm
 */
require_once "../../vendor/autoload.php";
$col = new PHPR\Collection(["one", "two", "three"]);
$rst = $col->map(function ($e) {
    return strrev($e);
});
var_dump($rst->values());
Example #11
0
<?php

/**
 * Includes code sample
 *
 * PHP version 5.5
 *
 * @category Samples
 * @package  PHPR
 * @author   Eustáquio Rangel <*****@*****.**>
 * @license  http://www.gnu.org/copyleft/gpl.html GPL
 * @link     http://github.com/taq/torm
 */
require_once "../../vendor/autoload.php";
$col = new PHPR\Collection(["one", "two", "three"]);
echo "one is " . ($col->includes("one") ? "" : "NOT") . "present in collection\n";
echo "four is " . ($col->includes("four") ? "" : "NOT ") . "present in collection\n";
Example #12
0
<?php

/**
 * Reject code sample
 *
 * PHP version 5.5
 *
 * @category Samples
 * @package  PHPR
 * @author   Eustáquio Rangel <*****@*****.**>
 * @license  http://www.gnu.org/copyleft/gpl.html GPL
 * @link     http://github.com/taq/torm
 */
require_once "../../vendor/autoload.php";
$col = new PHPR\Collection(["one", "two", "three"]);
$rst = $col->reject(function ($e) {
    return strlen($e) <= 3;
});
var_dump($rst->values());
Example #13
0
 /**
  * Test inject with start value
  *
  * @return null
  */
 public function testInjectStart()
 {
     $col = new PHPR\Collection([1, 2, 3, 4, 5]);
     $this->assertEquals(25, $col->inject(function ($memo, $value) {
         return $memo + $value;
     }, 10));
 }