closed
Goto Top

Vorhanden PHP Code nachträglich ändern bzw dynamisch anpassen

Hallo,

zunächst ein frohes Neues ;)

Nun zu meinem Anliegen:

Gibt es eine Möglichkeit einen PHP-Code mit externen Programmen bzw mit anderen PHP-Dateien zu scannen und dynamisch anzupassen? Am liebsten wäre mir folgende Lösung: Ich integriere in eine bereits vorab entwickelte MVC-Applikation eine PHP-Datei, welche die Controller erkennt und in jede Aktion eines Controllers eine ID hinzufügt. Ich dachte da an Ansätze aus der aspektorientierten Programmierung, mit der man sowas eventuell realisieren könnte??!! Mir fällt da momentan kein "guter" Weg ein.

Hier ein Beispiel:

vorher:

class TestController{
$testVariable;

public function __construct(){
$testVariable = 1;
}

public function testAction(){
[irgendeine Aktion]
}
}

danach:
- include einer Datei
- In jeder Aktion soll eine eindeutige ID erscheinen, auf die ich danach zugreifen kann.

class TestController{
$testVariable;

public function __construct(){
$ID=1;
$testVariable = 1;
}

public function testAction(){
$ID = 2;
[irgendeine Aktion]
}
}


Dies soll dazu dienen eine vorhanden Applikation nicht durch einen Entwickler anpassen zu müssen. Und das dort inkludierte Framework soll dann jeweils die Aktionen auswerten können. Das wäre optimal. Eventuell gibt es aber auch Workarounds


Besten Dank schon einmal.

Content-ID: 178246

Url: https://administrator.de/contentid/178246

Ausgedruckt am: 22.11.2024 um 16:11 Uhr

StefanKittel
StefanKittel 01.01.2012 um 20:03:42 Uhr
Goto Top
Hallo,

grundsätzlich ja, denn php-Dateien sind auch nur normale Text-Dateien die von anderen PHP-Skripten geändert oder neu erstellt werden können.
Aber das ist Schweinkram. Warum reichen die "normalen" Funktionen die Parameterübergabe oder Vererbung nicht?

Stefan
Closed
Closed 01.01.2012 um 20:12:11 Uhr
Goto Top
naja wie gesagt: Ich versuche ja ein Framewrk zu etnwickeln, welches sich auf BESTEHENDE Applikationen aufsetzen lässt. Da die Struktur der BESTEHENDEN Applikationen nie identisch ist, muss der Weg, um die IDs einzufügen dynamisch sein. Eine Vererbung oder Parametereingabe kommt nicht in Frage, da dann der Entwickler, welcher das Framework benutzen möchte, auch gleich die IDs selbst einpflegen könnte (anstelle der Änderung des Methodenheaders).

Hoffe, dass ich das Problem überhaupt darstellen konnte. Denn es erscheint mir, als wäre das jetzt nicht korrekt verstanden worden...
StefanKittel
StefanKittel 01.01.2012 um 20:57:10 Uhr
Goto Top
Hallo,
dann verwende besser Templates.
Also eine Vorlage aus der Du mit Platzhaltern die Laufzeitvariante erzeugst und dann startest.

- Template-Datei einlesen.
- Platzhalter ersetzen oder löschen
- Speichern und starten.

Platzhalter können sowas wie [[ID]] sein.

Stefan