Anwendung: In einem PHP Projekt werden von Klassen und Methoden die DocComments ausgewertet und zur Ablaufsteuerung verwendet. Das sieht so aus, dass zum Beispiel Methodenparameter im DocComment typisiert und als required markiert werden können. Auch ein Role-Management ist auf diese Art und Weise implementiert.
Problem: eAccelerator strippt die DocComments beim zweiten include einer Datei (neuer call) heraus, sodass die Validierungen fehlschlagen. Rekompilieren des ByteCode Cache ist nicht möglich, sodass dieses Verhalten nicht geändert werden kann.
Meine bisherigen Lösungsansätze: 1) Da alle includes zentral per __autoload geregelt sind vor dem include ein touch auf die Datei -> Nicht wirklich schön, da die Dateizeiten manipuliert werden und es rechenintensiv ist. 2) Internes Caching der DocComment in einer DB (SqLite) -> Nicht schön, da zu harte Abhängigkeit vom Cache und somit sehr fehleranfällig. 3) Den eigentlichen Sourcecode parsen anstatt Reflection zu verwenden -> Rechenintentiv und bei 'verschlüsselten' Sourcen nicht anwendbar. 4) Eine Art BuildScript, dass alle Klassen im Development-System (es gibt auch noch Live) durchgeht und die DocComments cached -> Aufwendig zu Implementieren, aber mein Favorit.
Nun die Frage: Hab ich Möglichkeiten übersehen? Bin für jeden Hinweis dankbar, da ich mich bei keiner der Alternativen wirklich wohl fühle ;)