(Disclaimer: Ja, ich hab vorher Google und Sourceforge bemüht.)
Hi,
Ich möchte eine PHP-Datei als Konfigurationsdatei für ein
Projekt behalten. Ich will die aber über eine Oberfläche
bearbeiten können.
Für INI-Dateien gibt es fertige Lösungen und Skripte die so
eine formularmäßige Bearbeitung erlauben. Auch wenn das mehr
Arbeit macht, find ich eine .PHP-config-Datei eleganter.
Auslesen und Neuschreiben sind auch nicht ernsthaft aufwendiger
als bei einer INI, weil die zu bearbeitenden Zeilen alle eine
etwas schlichtere Syntax verwenden. Mal als Beispiel:
<?php
# Konfig-Datei
$conf_var_1 = 1111;
$setting2 = "zwei";
define("SETTING3", 3);
include("plugin1.php"); // evtl mit Kommentar
#include("disabled.php");
include("plugin3.php");
...
App::Run();
?>
Das ganze sollte aber nicht-destruktiv funktionieren, d.h.
alle Kommentare und echte Anweisungen die drumherum stehen
müssen erhalten bleiben. Die Konfigurations-Befehle selbst
sind nur $var=VALUE, define() und include() - und stehen in
einem Block, der abgesehen von Kommentar- und Leerzeilen
zusammenhängend sein sollte.
Ok, sieht vielleicht etwas aufwendiger aus. Aber zeilenweise
Analysierung mit regulären Ausdrücken ist hier recht einfach
machbar. Eine Admin/Konfigurationsoberfläche dafür sollte
einfach nur zusätzliche include()-Plugins oder neue Variablen
einfügen können, oder bestehende entfernen.
Selberschreiben ist sicher kein Problem, dauert halt nur
ein wenig - deswegen frag ich hier mal, ob irgendwer sowas
schonmal gesehen hat.
Gibt's für sowas keine Fertiglösungen in Opensource-CMS/Blogs?
(die können ja nicht alle nur so umständliche SQL- oder XML-
Konfigurationstools verwenden)
G,
mario