hotti: Konfigurationsdatei

Beitrag lesen

hi,

ich möchte in meinem PHP-Projekt eine Konfigurationsdatei anlegen, die von einem Objekt, genauer gesagt dem Router-Objekt zur Laufzeit eingelesen wird. Konkret geht es um eine Datei, die ich Routingtable genannt und deren Ort erst feststeht, wenn die Route (zu der App) aus der URL extrahiert wurde. Dieser Routingtabelle steuert zum Beispiel, ob man für die jeweilige Route Rechte haben oder eingeloggt sein muss.

Also, wenn die Route im URL kodiert ist, zu einer Tabelle routen, die Routingtable heißt... hmm, die würde ich anders nennen, z.B. Access-Table, was für Deinen Fall trefflicher wäre.

Meine Frage: welches Format ist hier so üblich? Macht man sowas mit XML, oder besser mit Json oder Yaml? Oder einfach die PHP-Datei inkludieren?

Performant muss es sein. Diese Datei, wie auch immer die heißt, wird bei einem jeden Request geladen. Ich würde einen Core-Funktion einsetzen, die den sysopen-Call in c implemtiert, zb. PHP::serialize()  o.ä. und das Deployment entsprechend gestalten, d.h., die Konfig wird vor dem Deployment serialisiert. Soviel ich weiß, ist parse_ini_file() auch in c implementiert und entsprechend performant.

In Perl käme JSON::XS in Frage o.a. neuerliche Serializer. Was vorher in den Editor kommt, ist Geschmacksache und nicht XML, hier hast Du in Sachen Fehlertoleranz keinen Spielraum.

Hotti

--
Perl ist flüssig. PHP ist überflüssig.