Te podrían servir estas técnicas y ejemplos:
http://www.chipchapin.com/WebTools/MenuTools/
Lo más probable es que te corresponda implementar por tu parte la generación del array (la mayoría de esas técnicas de una forma u otra parten de esa base) en el formato que te pidan .. o bien con los métodos que te indiquen (crear nodos y demás historias). En ese caso tendrás que ir recorriendo recursivamente tu array generado y con explode() ir viendo si hay que crear un "nodo" o ya está creado y de quien depende si corresponde ...
Busca por "tree folder" o palabras similares en google .. lo más probable que algo ya esté hecho al respecto.
Un saludo,