Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: sortowanie po okreslonej wartosci
Forum PHP.pl > Forum > PHP
misty
hej, mam tablice z danymi ktora wyglada mniej wiecej tak:
  1.  
  2. array = (
  3. [2] => array( 'id' => 5, 'name' => 'Test1', 'value'= >2),
  4. [4] => array( 'id' => 1, 'name' => 'Test2', 'value'= >33),
  5. [0] => array( 'id' => 14, 'name' => 'Test3', 'value'= >31),
  6.  
  7. )


chcialabym to posortowac, ale tak, by sortowalo mi po value (od najwiekszego). Czyli chce otrzymac wynik:
  1.  
  2. array = (
  3. [4] => array( 'id' => 1, 'name' => 'Test2', 'value'= >33),
  4. [0] => array( 'id' => 14, 'name' => 'Test3', 'value'= >31),
  5. [2] => array( 'id' => 5, 'name' => 'Test1', 'value'= >2),
  6.  
  7. )



czy ktos z Was moglby mi wskazac jak to zrobic?

pzdr
mortus
Zdaje się, że bez własnej funkcji sortującej się nie obędzie. Zerknij na ten przykład z manuala.
kefirek
  1. $array = array (
  2. 2 => array( 'id' => 5, 'name' => 'Test1', 'value' =>2),
  3. 4 => array( 'id' => 1, 'name' => 'Test2', 'value' =>33),
  4. 0 => array( 'id' => 14, 'name' => 'Test3', 'value' =>31)
  5. );
  6.  
  7.  
  8.  
  9. foreach ($array as $key => $row) {
  10. $value[$key] = $row['value'];
  11. }
  12.  
  13.  
  14. array_multisort($value, SORT_DESC, $array);
  15.  
  16. echo '<pre>';
  17. print_r($array);
  18. echo '</pre>';
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.