Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 24.04.2003 Skąd: Chorzów Ostrzeżenie: (0%)
|
Witam,
Mam taki oto problem. Był on już poruszany wiele razy na różnych forach zwiazanych z php jednak nie moge poradzic sobie z nim i może przedstawie go i napiszę o co mi chodzi. Stworzyłem sobie wielowymiarową tablicę $tab_absent[] foreach ($tab_days as $key => $val) { $tab_absent[] = array('user' => $value_workers, 'section' => $section, 'date' => $val); } Zmienne $value_workers przyjmują wartości nazwisk które zawierają polskie litery. Chciałbym teraz móc sortować tablicę $tab_absent[] rosnąco lub malejąco wg. nazwisk. Wiem, że można to zrobić za pomocą funkcji multisort w następujacy sposób: foreach ($tab_absent as $ind => $val) { $tab_user[$ind] = $val['user']; $tab_section[$ind] = $val['section']; $tab_date[$ind] = $val['date']; } if ($order_by == 'user' && $sort_order == 'ASC') { array_multisort($tab_user, SORT_ASC, $tab_section, SORT_ASC, $tab_date, SORT_ASC, $tab_absent); } elseif ($order_by == 'user' && $sort_order == 'DESC') { array_multisort($tab_user, SORT_DESC, $tab_section, SORT_ASC, $tab_date, SORT_ASC, $tab_absent); } Skrypt działa jednak nie do końca. Nazwiska z polskimi literami zawsze brane sa na koniec listy. Wykorzystywałem funkcję setlocale => setlocale(LC_ALL, 'pl_PL', 'pl', 'Polish_Poland.28592'); jednak nic to nie dało. Czytałem, że taką funkcję sortowania trzeba stworzyć samemu jednak nie wiem jak to zrobić. Proszę o pomoc w tej sprawie. Oczekując na odpowiedz, pozdrawiam i z góry dziękuję (IMG:style_emoticons/default/smile.gif) Luv |
|
|
|
luv Sortowanie tablicy wielowymiarowej z polskimi znakami 18.05.2012, 20:03:08
darko Ostatecznie możesz napisać własny komparator i uży... 21.05.2012, 00:38:29
rocktech.pl Witam.
Zainteresuj się rozszerzeniem php intl.
... 21.05.2012, 07:57:00 ![]() ![]() |
|
Aktualny czas: 24.12.2025 - 17:47 |