Curry en casa
<?php
//1 | multiplicación
$m = function ($arg1) {
return function($arg2) use ($arg1){
return ($arg1 * $arg2);
};
};
// 2 x 4
$x = $m(2);
echo $x(4);
//2 | imprime un array en forma de listado, el primer argumento es el límite
$a = range(1,20);
$l = function($arg1) {
return function ($arg2) use ($arg1) {
for ($i = 0; $i < $arg1; $i++) {
print $arg2[$i] . "\n\r";
}
};
};
// 5 de 20
$limit = $l(5);
echo $limit($a);