Hallo zusammen,
ich bin gerade auf der Suche nach einem guten Multilanguage-Ansatz. Ich möchte eine Plattform für mehrere Sprachen (Anzahl offen) vorbereiten. Es gibt natürlich den Ansatz der $lang[]-Array-Lösung, die gefällt mir aber nicht so ganz.
Ich würde lieber etwas verwenden, was ich in der Java-Welt gesehen habe: Es gibt eine Template-Datei tpl.php, die den HTML/PHP-Code und i18n-Tokens enthält. Dann gibt es für jede Sprache eine eigene Übersetzungsdatei, die die Übersetzungen zu den Tokens enthält. Für das live-System werden dann aus der Kombination von tpl.php und german.lang eine Datei tpl_de.php erstellt, in der die Tokens für die deutsche Version ersetzt wurden. So müssen die statischen Texte nicht bei jedem Request geparst werden und Änderungen am Template müssen nur einmal gemacht werden. Kennt jemand ein System bzw. einen Ansatz, mit dem das gehen würde? Ich dachte jetzt an eine Lösung mit ANT und einem build-Script, wobei hier iterative Lösungen schwer umzusetzen sind. Oder eben ein Cache-System das prüft, ob die Datei tpl_de.php schon existiert und wenn nicht, diese parst. Ich würde das ganze aber gerne nicht auf dem zweiten Weg machen, weil dann ja auch bei jedem Request die eigentlich (außer eben beim allerersetzen Aufruf) sinnfreie Abfrage exist_template gemacht werden muss.
Freue mich auf eure Antworten!
DANKE!
strauberry
ich bin gerade auf der Suche nach einem guten Multilanguage-Ansatz. Ich möchte eine Plattform für mehrere Sprachen (Anzahl offen) vorbereiten. Es gibt natürlich den Ansatz der $lang[]-Array-Lösung, die gefällt mir aber nicht so ganz.
Ich würde lieber etwas verwenden, was ich in der Java-Welt gesehen habe: Es gibt eine Template-Datei tpl.php, die den HTML/PHP-Code und i18n-Tokens enthält. Dann gibt es für jede Sprache eine eigene Übersetzungsdatei, die die Übersetzungen zu den Tokens enthält. Für das live-System werden dann aus der Kombination von tpl.php und german.lang eine Datei tpl_de.php erstellt, in der die Tokens für die deutsche Version ersetzt wurden. So müssen die statischen Texte nicht bei jedem Request geparst werden und Änderungen am Template müssen nur einmal gemacht werden. Kennt jemand ein System bzw. einen Ansatz, mit dem das gehen würde? Ich dachte jetzt an eine Lösung mit ANT und einem build-Script, wobei hier iterative Lösungen schwer umzusetzen sind. Oder eben ein Cache-System das prüft, ob die Datei tpl_de.php schon existiert und wenn nicht, diese parst. Ich würde das ganze aber gerne nicht auf dem zweiten Weg machen, weil dann ja auch bei jedem Request die eigentlich (außer eben beim allerersetzen Aufruf) sinnfreie Abfrage exist_template gemacht werden muss.
Freue mich auf eure Antworten!
DANKE!
strauberry
Kommentar