Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Sortowanie - poslkie znaki
Forum PHP.pl > Forum > Przedszkole
prohol
Mam problem z posortowaniem tablicy.

Tablica ma postać :

'Białystok'=>'12'
'Warszawa'=>'13'
...
'Łódź'=>'5'
..itd

Funkcja ksort sortuje mi dobrze, ale Łódź wrzuca na koniec posortowanej listy. Wczesniej mam ustawione setlocale(LC_ALL, "pl_PL");. Prosze o pomoc.

Dodam ze dane sa wyciagane z bazy mysql, (baza kodowana utf-8, strona w iso-8859-2, przy polaczeniu set names 'latin2' ) gdzie sortowanie w zapytaniu daje identyczne wyniki jak w ksort, a wlasnie dlatego ze nie dziala mi sortowanie w mysql to postanowilem zrobic to z poziomu php i niestety wynik taki sam:(. Przejrzałem forum itp i nie znalazlem dobrego rozwiazania. Prosze o pomoc.
JoShiMa
No to trzeba chyba wykorzystać usort i zrobić odpowiednią funkcję sortującą.
wookieb
Tak jak kolega mówi. Tylko w funkcji sortujacej wykorzystac http://php.net/strcoll i bedzie ok
JoShiMa
Cytat(wookieb @ 9.12.2008, 19:10:44 ) *
Tak jak kolega mówi.

Koleżanka winksmiley.jpg
prohol
dzieki wszystkim.

Dla potomności dodam ze wystarczyło, że zmieniłem kolejność w tablicy tzn '12'=>'Białystok' itd oraz uzylem:

  1. <?php
  2. setlocale(LC_COLLATE, "pl_PL");
  3.  
  4. sort($tab, SORT_LOCALE_STRING);
  5. ?>
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.