Alex: Sprachenkonzept

Beitrag lesen

Hallo,

Wenn es übersetzt werden soll, dann sollte das über den gewählten Weg gehen, sonst hat man x unterschiedliche Verfahren zu pflegen.

Also du würdest entweder alle Texte in gettext mach oder eben keinen, richtig?

Es gibt die Heredoc- und Nowdoc-Syntax, die ähnliches leisten kann. Zudem kann man vielleicht auch über unterschiedliche Templates nachdenken. Unterschiedliche Templates bedeutet aber üblicherweise auch, dass man den HTML-Code zwischen den sprachspezifischen Texten mehrfach vorliegen hat, was wartungstechnisch sehr ungünstig ist. Also wäre eine solche Lösung schon deshalb nicht unbedingt zu bevorzugen. Große Textstücke sind vermutlich weniger reine Textwüsten sondern mit Markup durchzogen. Ich denke, der beste Kompromiss ist dann, eine eigene Syntax zu verwenden, die beim Abruf durch das Markup ausgetauscht wird. (Ein Cache kann helfen, dass das nicht jedes Mal passieren muss.)

*DOC habe ich geredae mal ausprobiert. Ist eine interessante Sache, nur leider kann man dabei anscheinend nicht mit Codeeinrückungen arbeiten, da PHP sich dann an den Leerzeichen stört...

Ja so ein langer Text würde etwas HTML zur schöneren Aufbereitung enthalten.
Wie meinst du das mit der eigenen Syntax und dem austausch durch das Markup, das verstehe ich leider nicht.

Der Sinn des Klartextes anstelle eines Textnamens ist, dass zum einen der Text zumindest in einer Sprache in voller Schönheit im Quelltext steht, man also nicht rätseln muss, welcher Text konkret sich hinter einem Platzhalter verbirgt. Zum anderen ist der dann auch die Fallback-Lösung für nicht übersetzte Texte.

Stimmt, das ist ein großer Vorteil. Ich habe mal aus Spaß eine mehrsprachige kleine Seite gebaut. Da wusste ich von gettext noch nichts und habe es daher mit Arrays gemacht. Hatte da nur Platzhalter im Quelltext und nicht die ganzen Sätze...das war schon sehr unübersichtlich.

Gruß
Alex