Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Sortowanie asocjacyjnej tablicy wielowymiarowej
Mayka
post
Post #1





Grupa: Zarejestrowani
Postów: 304
Pomógł: 1
Dołączył: 12.01.2009
Skąd: Kanapa

Ostrzeżenie: (0%)
-----


Potrzebuje posortować tablice która wygląda tak:
Array{
[0]=Array{
[id]=2
[cena]=2,33
[nazwa]="piekarnik"
}
[1]=Array{
[id]=4
[cena]=75,33
[nazwa]="zmywarka"
}
[2]=Array{
[id]=2
[cena]=23,33
[nazwa]="lodówka"
}
}
Po wartości "cena" ktoś mógłby mi pomóc to zrobić ? Bo nie mogę sobie poradzić z tym kombinowałem z czymś takim ale to chyba jest zle coś bo nie działa ;P

function so ($a, $b) { return (strcmp ($a['cena'],$b['cena'])); }
uasort($tablica, 'so');
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
no_face
post
Post #2





Grupa: Zarejestrowani
Postów: 346
Pomógł: 23
Dołączył: 28.11.2004

Ostrzeżenie: (0%)
-----


Wykorzystaj w tym przypadku funkcje array_multisort, ktora nadaje sie do tego wysmienicie:

Wykorzystaj foreach do stworzenia tablicy z cenami i podstaw. Wycinek z manuala:

  1. // Obtain a list of columns
  2. foreach ($data as $key => $row) {
  3. $volume[$key] = $row['volume'];
  4. $edition[$key] = $row['edition'];
  5. }
  6.  
  7. // Sort the data with volume descending, edition ascending
  8. // Add $data as the last parameter, to sort by the common key
  9. array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data);
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.12.2025 - 19:34