Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Sortowanie wielowymiarowej tablicy
binio
post
Post #1





Grupa: Zarejestrowani
Postów: 57
Pomógł: 0
Dołączył: 23.06.2003

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


Hi
mam problem z posortawaniem tablicy,
pole invoice_number wyglada np tak: 2004/55 i jest typu varchar,
rozbijam dane na rok i nr i wprowadzam do tablicy.
chciałbym miec mozliwosc posortowania tego najpierw jako rok, potem jako nr malejąco

czyli aby uzyskac takie dane:

2004 55
2004 54
...
2003 99
itp

kod wygląda tak:
  1. <?php
  2.  
  3. $tab = array();
  4. $p_last_number = mysql_query(&#092;"SELECT invoice_number FROM payments\");
  5. while($last_number = mysql_fetch_array($p_last_number)) 
  6. {
  7.  
  8. $rozbij = explode(&#092;"/\", $last_number[invoice_number]); // rozbijam invoice_number na rok i nr
  9.  
  10. $tab[$last_number[id_payments]][0] = $rozbij[0]; // dodanie roku do tablicy
  11. $tab[$last_number[id_payments]][1] = $rozbij[1]; // dodanie nr do tablicy
  12.  
  13. }
  14.  
  15. ?>

No i tu sie zaczyna problem bo nie moge znalezc sposobu aby posortowac to najpierw wedlug roku, potem wedlug numeru (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Z gory dzieki za pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
scanner
post
Post #2





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Jakbys nie rozbijał, tylko sortował najpierw, to byś miał ok.
2004/55
2004/54
...
2003/01
...
Go to the top of the page
+Quote Post
binio
post
Post #3





Grupa: Zarejestrowani
Postów: 57
Pomógł: 0
Dołączył: 23.06.2003

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


Cytat(scanner @ 2004-12-02 17:14:56)
Jakbys nie rozbijał, tylko sortował najpierw, to byś miał ok.
2004/55
2004/54
...
2003/01
...

Miałem tak na początku ale wszystko się posypało gdy number_invoice był np. 2004/101.

ułożyło tak

2004/99
2004/98
...
2004/101
2004/10
...
Go to the top of the page
+Quote Post
scanner
post
Post #4





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




a próbowałeś array_multisort" title="Zobacz w manualu PHP" target="_manual
Go to the top of the page
+Quote Post
rogrog
post
Post #5





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

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


Cytat(binio @ 2004-12-02 17:45:51)
ułożyło tak

2004/99
2004/98
...
2004/101
2004/10
...

a próbowałeś natsort" title="Zobacz w manualu PHP" target="_manual (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
binio
post
Post #6





Grupa: Zarejestrowani
Postów: 57
Pomógł: 0
Dołączył: 23.06.2003

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


Cytat(rogrog @ 2004-12-02 18:32:54)

Dzieki, działa super gdy jedną kolumne do sortowania.
Do wielowymiarowej tablicy udalo mi sie wykorzystac array_multisort

Thanks All
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: 23.08.2025 - 04:46