Autor Zpráva
Lisoe
Profil *
Zdravím,

chtěl bych poprosit o radu, jak se dá řešit předefinované řazení v poli? Mám následující pole, kde mám velikost triček:
(
    [0] => XL
    [1] => L
    [2] => M
    [3] => S
)

Vypisuji ho standardně přes foreach.

Každopádně chtěl bych ho řešit v posloupnosti dle velikostí od nejmenší po největší, tzn. výstup by byl S, M, L, XL. Jak se dá toto řešit v array?

Díky za radu
Kcko
Profil
Lisoe:
V tomto konkrétním případě Ti stačí funkce array_reverse

a kdybys to měl v různorodém pořadí, nebo měl těch velikostí víc (nebo potřeboval řadit ještě něco jiného) tak to uděláš vlastní funkcí cca takto:

$arr = ['XL', 'S', 'M', 'L'];

$ranked = ['XL' => 100, 'L' => 50, 'M' => 20, 'S' => 10];
usort($arr, function($a, $b) use($ranked) {
    return $ranked[$a] <=> $ranked[$b];
});

print_r($arr);

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0