axeljaeger
29-01-2003, 15:21
Ich arbeite gerade an einem Übersetzungsframework für Websiten. Das System soll einfach zu benutzen sein,
soll aber unabhängig von einer Datenbank funktionieren. Jetzt hab ich mir gedacht, es gibt in jedem Verzeichnis,
in dem sich zu übersetzende Dateien befinden, einen Ordner lang, in dem jeweils Dateien sind, deren Name sich
aus der zu übersetzenden Datei plus der enthaltenden Sprache zusammensetzt. Der Programmierer der Website
hat eine Variable $lang zu setzen und markiert einen zu übersetzenden String mit einer Funktion "tcms_tr($KEY)"
als zu übersetzten, also etwa wie in Qt. Bis hierhin sehe ich noch keine Schwierigkeiten. Um nun die Websiten
zu übersetzen, soll es ein Skript linguist.php geben, das selbsständig alle zu übersetzenden Strings aus einer
Datei rausfischt. Dazu hab ich mir überlegt, in die tcms_tr-Funktion einen Schalter einzubauen, der, wenn er gesetzt
wurde, jedesmal, wenn die Funktion aufgerufen wurde, den Parameter in eine Liste reinschreibt, so das ich am Ende
eine komplette Liste aller String habe, die die Funktion aufrufen. Ist das eine gute Idee?
soll aber unabhängig von einer Datenbank funktionieren. Jetzt hab ich mir gedacht, es gibt in jedem Verzeichnis,
in dem sich zu übersetzende Dateien befinden, einen Ordner lang, in dem jeweils Dateien sind, deren Name sich
aus der zu übersetzenden Datei plus der enthaltenden Sprache zusammensetzt. Der Programmierer der Website
hat eine Variable $lang zu setzen und markiert einen zu übersetzenden String mit einer Funktion "tcms_tr($KEY)"
als zu übersetzten, also etwa wie in Qt. Bis hierhin sehe ich noch keine Schwierigkeiten. Um nun die Websiten
zu übersetzen, soll es ein Skript linguist.php geben, das selbsständig alle zu übersetzenden Strings aus einer
Datei rausfischt. Dazu hab ich mir überlegt, in die tcms_tr-Funktion einen Schalter einzubauen, der, wenn er gesetzt
wurde, jedesmal, wenn die Funktion aufgerufen wurde, den Parameter in eine Liste reinschreibt, so das ich am Ende
eine komplette Liste aller String habe, die die Funktion aufrufen. Ist das eine gute Idee?