Tablice (2 article)

Wróć do strony

Przydatna funkcja sortująca wielowymiarową tablicę w/g klucza jednego z elementów:

Najpierw definiujemy funkcję (zakładając, że kluczem będzie np. order):

  function cmp($a, $b){
  if ($a == $b)
    return 0;
  return ($a["order"] < $b["order"]) ? -1 : 1;
}

następnie ją wywołujemy:

     usort($wielowymiarowa_tablica, "cmp");

Gotowa funkcja (zakładając, że znamy $given_key):

  function dksort($array, $given_key){ 
    if(array_key_exists($given_key,$array)){
        $a[$given_key] = $array[$given_key];
        foreach($array as $key=>$val){
            if($case==$key){

            }else{
                $a[$key] = $array[$key];
            }
        }
    }

    return $a;
}