176 of 410 menu

Funkce usort

Funkce usort řadí pole podle hodnot prvků, přičemž pro určení pořadí prvků v seřazeném poli používá callback. Funkce mění samotné pole.

Porovnávací funkce musí vracet celé číslo, které v závislosti na výsledku porovnání: menší, rovno nebo větší než nula.

Syntaxe

usort(array &$array, callable $callback): bool

Příklad

Seřaďme pole vzestupně prvků:

<?php $arr = [1, 3, 2, 5, 4]; function func($a, $b) { if ($a === $b) { return 0; } else if ($a < $b) { return -1; } else { return 1; } } usort($arr, 'func'); var_dump($arr); ?>

Výsledek provedení kódu:

[1, 2, 3, 4, 5]

Příklad

A nyní seřaďme pole sestupně prvků:

<?php $arr = [1, 3, 2, 5, 4]; function func($a, $b) { if ($a === $b) { return 0; } else if ($a > $b) { return -1; } else { return 1; } } usort($arr, 'func'); var_dump($arr); ?>

Výsledek provedení kódu:

[1, 2, 3, 4, 5]

Příklad

A nyní seřaďme pole vzestupně podle počtu znaků v prvcích pole:

<?php $arr = [ '123', '1', '12345', '12', '1234', ]; function func($a, $b) { if (strlen($a) === strlen($b)) { return 0; } else if (strlen($a) < strlen($b)) { return -1; } else { return 1; } } usort($arr, 'func'); var_dump($arr); ?>

Výsledek provedení kódu:

[ '1', '12', '123', '1234', '12345', ]

Viz také

  • funkci sort,
    která řadí vzestupně podle prvků
  • funkci rsort,
    která řadí sestupně podle prvků
  • funkci ksort,
    která řadí vzestupně podle klíčů
  • funkci krsort,
    která řadí sestupně podle klíčů
  • funkci asort,
    která řadí vzestupně podle prvků se zachováním klíčů
  • funkci arsort,
    která řadí sestupně podle prvků se zachováním klíčů
  • funkci natsort,
    která řadí přirozeným způsobem
  • funkci natcasesort,
    která řadí přirozeným způsobem bez ohledu na velikost písmen
  • funkci usort,
    která řadí pomocí callbacku
  • funkci uksort,
    která řadí pomocí callbacku podle klíčů
  • funkci uasort,
    která řadí pomocí callbacku se zachováním klíčů
  • funkci array_multisort,
    která řadí více polí
Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout