Hämta alfabetet, matriser av tal och intervaller

22. 8. 2019

Ofta behöver vi ha en matris med värden som härleds genom en mycket enkel algoritm (t.ex. en matris med tal från $min till $max), detta kan lösas antingen på ett komplicerat sätt:

php
getNumbers(10, 100);
/**
* @return int[]
*/
function getNumbers(int $min, int $max): array
{
$numbers = [];
for ($i = $min; $i <= $max; $i++) {
$numbers[] = $i;
}
return $numbers;
}

Eller använd den färdiga funktionen range($min, $max, $step):

php
// [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
foreach (range(0, 12) as $number) {
echo $number . ';';
}
// [0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
foreach (range(0, 100, 10) as $number) {
echo $number . ';';
}
// ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']
foreach (range('a', 'i') as $char) {
echo $char . ';';
}
// ['c', 'b', 'a']
foreach (range('c', 'a') as $char) {
echo $char . ';';
}

Den här funktionen används till exempel i modulen Paginator, som löser sidnumreringen av en lång lista med resultat, eller generellt sett sortering i någon katalog.

Jan Barášek
Jan BarášekVíce o autorovi

Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.

Rád vám pomůžu:

Newsletter

Nejlepsi tipy a triky o PHP do Vaseho e-mailu. Clanky a novinky nejen ze sveta PHP a programovani.