A small library that implements the interval iterator function.
To install the package, use the Composer.
composer require serafim/interval
In the second integer argument (to) is greater than the first
integer argument (from), the interval will be incremented by 1
.
$interval = \interval(1, 6);
// [1, 2, 3, 4, 5, 6]
In the first integer argument (from) is greater than the second
integer argument (to), the interval will be decremented by -1
.
$interval = \interval(6, 1);
// [6, 5, 4, 3, 2, 1]
If one of the values is float, the step will
automatically change to .1
(or -.1
).
$incremental = \interval(.5, 1);
// [0.5, 0.6, 0.7, 0.8, 0.9, 1.0]
$decremental = \interval(1, .5);
// [1.0, 0.9, 0.8, 0.7, 0.6, 0.5]
$interval = \interval(1, 1.1)->step(.05);
// [1.0, 1.05, 1.1]
$interval = \interval(1);
// [1, 2, 3, 4 … ∞]
$interval = \interval(2)->step(-1);
// [2, 1, 0, -1, -2 … ∞]
Just a little insanity, why not? Just do not ask how it works!
$interval = \interval(1...5);
// [1, 2, 3, 4, 5]