Funktionen uksort

Funktionen uksort sorterer en array efter nøgleværdier ved at bruge en callback-funktion til at bestemme rækkefølgen af elementerne i den sorterede array. Funktionen ændrer selve arrayet.

Sammenligningsfunktionen skal returnere et heltal, der afhængigt af sammenligningsresultatet: mindre end, lig med eller større end nul.

Syntaks

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

Eksempel

Lad os sortere arrayet i stigende rækkefølge efter nøgler:

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

Resultat af kodekørsel:

php[
  'a' => 5,
  'b' => 1,
  'c' => 2,
  'd' => 4,
  'e' => 3,
]

Se også

  • funktionen sort,
    der sorterer efter stigende elementværdier
  • funktionen rsort,
    der sorterer efter faldende elementværdier
  • funktionen ksort,
    der sorterer efter stigende nøgler
  • funktionen krsort,
    der sorterer efter faldende nøgler
  • funktionen asort,
    der sorterer efter stigende elementværdier med bevaring af nøgler
  • funktionen arsort,
    der sorterer efter faldende elementværdier med bevaring af nøgler
  • funktionen natsort,
    der sorterer på naturlig vis
  • funktionen natcasesort,
    der sorterer på naturlig vis uden hensyn til store og små bogstaver
  • funktionen usort,
    der sorterer via callback
  • funktionen uksort,
    der sorterer via callback efter nøgler
  • funktionen uasort,
    der sorterer via callback med bevaring af nøgler
  • funktionen array_multisort,
    der sorterer flere arrays