Hola a tutti,
volevo sentire qualche parere e qualche modalità di sviluppo di qualche altro programmatore, giusto per farmi un idea
Cosa intendo dire? voi come fate per trasformare le liste in alberi? Liste che hanno SOLO il riferimento al parent (niente sistemi circolari)?
Non mi interessano i sistemi ricorsivi, quindi non li postate
Detto questo, vi illustro la mia modalità di sviluppo in queste situazioni:
- Leggi gli elementi dalla sorgente dati (database, file di testo, webservice e cosi via)
- Mi costruisco una hashtable (un array con chiavi non numeriche in php) contenente un oggetto con due proprietà ovvero Element, che si riferisce all'elemento della lista, e Children, che si riferisce all'elenco dei figli, ed infine come chiave dell'hashtable utilizzo l'id dell'elemento (ID come chiave di identificazione univoca che di solito corrisponde al ID del db ma ovviamente se la sorgente è un altra va bene qualsiasi altro riferimento, basta che sia usato pure nel parent)
- Dopo aver effettuato questo primo ciclo, ne effettuo un secondo che non fa altro che inserire tutti gli elementi che non hanno parent corrisponde a zero nell'elemento Children del parent, operazione effettuata per riferimento
- Fatto questo effettuo un terzo ciclo che mi elimina tutti gli elementi che non hanno parent zero dall'elenco principale
In questo modo tiro fuori la struttura ad albero dalla semplice lista che si limita ad elencare 3 volte l'intero array però sono operazioni abbastanza semplici
Or dunque, qualche suggerimento o consiglio?![]()


Rispondi quotando