Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: sortowanie tablicy
Forum PHP.pl > Forum > PHP
Thuunder
Witam,
Mam dane z bazy w tablicy w postaci
  1. <?php
  2. $tablica[0]['imie']
  3. $tablica[0]['nazwisko']
  4. $tablica[0]['uwagi']
  5. $tablica[1]['imie']
  6. $tablica[1]['nazwisko']
  7. $tablica[1]['uwagi']
  8. ?>

i chciałbym ją posortować raz po nazwisku, a raz po imieniu. W jaki sposób?
nospor
W manualu masz to ladnie opisane. Wystarczy przeczytac dokladnie calosc
http://pl2.php.net/manual/pl/function.array-multisort.php
Zyx
Co rozumiesz przez pojęcie "raz po imieniu a raz po nazwisku"? Chodzi o możliwość wyboru, względem czego sortować? Po stronie PHP myślę, że bardziej nada się tu funkcja usort(), gdzie możesz zaproponować własną funkcję porównującą elementy:

  1. <?php
  2. function porownywanie($a, $b)
  3. {
  4.  return strcmp($a['imie'], $b['imie']);
  5. }
  6.  
  7. usort($tablica, 'porownywanie');
  8. ?>


Używając kilku funkcji lub konfigurowalnej klasy, możesz w ten sposób zrobić sortowanie względem normalnego pola. Mimo to polecałbym jednak takie operacje robić już na etapie pobierania danych z bazy, gdzie takie sortowanie może być dużo szybsze dzięki indeksom.
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.