- var_dump: documentation ( source)
- array_values: documentation ( source)
- iterator_to_array: documentation ( source)
<?php
function foo (iterable $ints) {
$actualInts = [];
foreach ($ints as $int) {
$actualInts[] = (function (int $int): int {
return $int;
})($int);
}
return $actualInts;
}
function bar (iterable $ints) {
$actualInts = (function (int ... $ints): array {
return $ints;
})(... array_values(is_array($ints) ? $ints : iterator_to_array($ints)));
return $actualInts;
}
function getIt(): Generator {
yield '1';
yield 3;
}
var_dump(foo(['1', 3]));
var_dump(foo(getIt()));
var_dump(bar(['1', 3]));
var_dump(bar(getIt()));