Hola:
El Patrón.: Seguro que no has hecho nada imposible...
Cuando funciona php lo que se ponga javascript no es más que texto plano... o si lo quieres, código, pero ese código no es nada funcional... cuando la página la genera el código php todo lo que sea javascript, incluso todo lo que sea html, tan solo es texto... los tags html no se evalúan salvo que el fichero sea php... prueba poner código php en un fichero html... lo mismo pasa con el código javascript si no lo pones dentro de un tag script.
El menú que estás generendo es javascript que php lo "entrega" al navegador (o quien lo pida) como texto, igual que cualquier etiqueta.
Estudia las respuestas del tema, y dinos si estamos hablando de lo mismo.
Saludos