Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] array_multisort nie sortuje poprawnie
Forum PHP.pl > Forum > Przedszkole
qweluke
Mam taką tablice
  1. Array ( [1] => Array ( [godziny] => 14 [imie] => Magdalena [czas] => 14.00-20.00 ) [2] => Array ( [godziny] => 14 [imie] => Iwona [czas] => 14.00-20.00 ) [3] => Array ( [godziny] => 12 [imie] => Aleksandra [czas] => 12.00-20.00 ) [4] => Array ( [godziny] => 8- [imie] => Dagmara [czas] => 8.00-14.00 ) )


robie taki myk

  1. $tmp = Array();
  2. foreach($Zawodnicy as &$tabliczka)
  3. $tmp[] = &$tabliczka["czas"];
  4. array_multisort($tmp, $Zawodnicy );


i dostaje coś takiego:

  1. Array ( [0] => Array ( [godziny] => 12 [imie] => Aleksandra [czas] => 12.00-20.00 ) [1] => Array ( [godziny] => 14 [imie] => Iwona [czas] => 14.00-20.00 ) [2] => Array ( [godziny] => 14 [imie] => Magdalena [czas] => 14.00-20.00 ) [3] => Array ( [godziny] => 8- [imie] => Dagmara [czas] => 8.00-14.00 ) )


Dlaczego nie chce posortować tego dokładnie, i czas 8.00-14.00 wstawia na sam koniec?
Po Imie sortuje poprawnei :/
Fifi209
A co według Ciebie oznacza zapis: 14.00-20.00

Dla mnie jest to równoznaczne z 14-20
Wynikiem zatem będzie -6
qweluke
to dlaczego jeżeli wybiore 'godziny' to tak samo sortuje? :/
po za tym, ja tam nie wykonuje żadnych obliczeń matematycznych gdyż użycie
echo $tabliczka[0]["czas"]
wyświetli mi 12.00-20.00


  1. array_multisort($tmp, SORT_NUMERIC, SORT_ASC, $Zawodnicy );

Teraz działa poprawnie

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.