En principio .. con
dir()
www.php.net/dir
podrías leer un directorio y ver cuantos sub.directorios tienes hacia abajo (o si estás en el raiz) .. Recursivamente podrías ir metiendote en todos para crear tu estructura de arbol de tu sitio ..
Pero, .. te recomiendo hechar un vistazo a estructuras tipo "tree" (arbol) que ya hacen eso partiendo de una estructura data de un directorio .. y así crear tu barra de navegación ...
Puedes ver ya hecho por aquí:
http://www.phpclasses.org/browse/class/17.html
Un saludo,