Cześć.

Mam taką oto funkcję

  1. function tablica(){
  2.  
  3. global $tab;
  4.  
  5. $query = mysql_query("SELECT id, rodzicId, nazwa, pozycja FROM drzewo ORDER BY rodzicId");
  6.  
  7. while($res = mysql_fetch_array($query)) {
  8.  
  9. if( $res['rodzicId'] == 0 ) {
  10.  
  11. $tab[] = array($res['id'], 0, $res['nazwa'], $res['pozycja']);
  12.  
  13. } else {
  14.  
  15. $query2 = mysql_query("SELECT id, rodzicId, nazwa, pozycja FROM drzewo ORDER BY rodzicId");
  16.  
  17. while( $res2 = mysql_fetch_array($query2) ) {
  18.  
  19. if( $res['rodzicId'] == $res2['id'] )
  20. $tab[] = array($res['id'], $res2['id'], $res['nazwa'], $res['pozycja']);
  21.  
  22. }
  23.  
  24. }
  25.  
  26. }
  27. return $tab;
  28.  
  29. }


Pobiera ona mi z bazy wartości do tablicy, tj.:

  1. array[0] (
  2. [0] <- id
  3. [1] <- rodzicId
  4. [2] <- nazwa
  5. [3] <- pozycja
  6. )
  7.  
  8. array[1] (
  9. [0] <- id
  10. [1] <- rodzicId
  11. [2] <- nazwa
  12. [3] <- pozycja
  13. )
  14. )


W jaki sposób mogę posortować te wyniki, tak aby stworzyć strukturę menu wielopoziomowego o dowolnej ilości zagnieżdżeń?