phpbar.de logo

Mailinglisten-Archive

[php] Mehrsprachigkeit

[php] Mehrsprachigkeit

Ringo Großer swek at gmx.net
Die Dez 2 12:19:29 CET 2008


Hallo

Florian Grell wrote:
> Ich nutze zur Zeit folgendes System (abgeschaut bei Wordpress):
> - alle Texte als Array in eine Datei pro Sprache
> - Arrayschlüssel ist der ursprüngliche Text ("Klicken Sie hier, um...")
> - Übersetzung als Arraywert ("Click here to...")
> - Übersetzungsfunktion:
> function __($key) {
>   global $lang;
>   return isset($lang[$key]) ? $lang[$key] : $key;
> }
> - Template:
> <?php echo __("Klicken Sie hier, um..."); ?>
> 
> Hat den Vorteil, das auch bei nichtvorhandensein der Übersetzung "echter"
> Text angezeigt wird.
> Die Strings könnten natürlich auch in einer DB abgelegt werden.

Das erscheint mir ähnlich wie Funktionsweise der gettext Erweiterung, 
die wiederum noch zusätzliche Möglichkeiten hat wie z.B. die 
Verarbeitung von Platzhaltern und deren unterschiedliche Reihenfolge in 
unterschiedlichen Sprachen.

Allerdings passt gettext nicht auf die ursprüngliche Anforderung, da 
sich die PO-Dateien nur mit zusätzlichem Aufwand pflegen lassen und 
kompiliert werden müssen.

Ich möchte nochmal die Frage nach vergleichenden Erfahrungen in die 
Runde werfen. Gibt es signifikante Geschwindigkeitsvorteile der gettext 
Komponente gegenüber den hier vorgeschlagenen Lösungen (Language-Datei, 
Language-Table)? Oder in welcher Situation würde man sich für gettext 
entscheiden?

regards, Ringo

php::bar PHP Wiki   -   Listenarchive