Wenn es sich um reine Daten handelt und keine Spezifikation, würde ich XML schon mal rauswerfen. Es ist ein sehr schönes Format, kann gut transformiert werden, allerdings kann es schlechter manuell editiert werden und das programmatische Auswerten ist etwas schwieriger, da es Attribute und Knoten / NodeNames gibt (im Gegensatz zu JSON, wo es nur Attribute gibt).
CSV eignet sich sehr gut für tabellarische Daten, hat allerdings den Nachteil, dass du schlecht "Zeilenumbrüche" in Text unterbringen kannst und dass es oft Probleme bei der Codierung gibt (UTF-8, Windows-1252, etc.). Es lässt sich auch weniger einfach verarbeiten, als XML oder JSON, wobei der Unterschied nicht so furchtbar groß ist. Dafür kann man es aber hervorragend in Excel importieren. Wenn die Menütexte keine Umbrüche haben und manuell editiert werden müssen, würde ich CSV oder wahlweise xlsx nehmen (das kann man mit PHPExcel recht gut erzeugen).
Wenn du allerdings davon ausgehst, dass die Daten nur verarbeitet und nicht manuell editiert werden müssen, würde ich JSON nehmen. Das kann man grade in der Kombination PHP / JavaScript gut verwenden, weil man es in beiden Sprachen sehr einfach erzeugen und wieder lesen kann.