<?php
function xrange($start, $limit, $step = 1) {
if if ($start <= $limit) {
if ($step <= 0) {
throw new LogicException('Step must be positive');
}
for ($i = $start; $i <= $limit; $i += $step) {
yield $i;
}
} else {
if ($step >= 0) {
throw new LogicException('Step must be negative');
}
for ($i = $start; $i >= $limit; $i += $step) {
yield $i;
}
}
}
/*
* range() ve xrange() işlevlerinin ikisi de aşağıda
* benzer çıktıyı verecektir.
*/
echo 'range() içindeki bir haneli tek sayılar: ';
foreach (range(1, 9, 2) as $number) {
echo "$number ";
}
echo "\n";
echo 'xrange() içindeki bir haneli tek sayılar: ';
foreach (xrange(1, 9, 2) as $number) {
echo "$number ";
}
?>
Yukarıdaki örneğin çıktısı:
range() içindeki bir haneli tek sayılar: 1 3 5 7 9
xrange() içindeki bir haneli tek sayılar: 1 3 5 7 9