Frage

Wie übersetzt ich ein paar Zeichenfolgen in einer Webanwendung in eine andere Sprache, wenn der Benutzer diese Zeichenfolgen in seiner Sprache sehen möchte?

War es hilfreich?

Lösung

Kennen Sie i18n? Es ist kurz für "Internationalisierung", ein 20 -Buch -Wort: zuerst "I", dann 18 Buchstaben und dann "n": D.

Einige Leute verwenden dafür Properties-Files. Sie nennen die Eigenschaftsdatei nach dem i18n-Sprachnamen. Sie hätten zum Beispiel zum Beispiel en-us.properties und sw-se.properties Für Englisch gegen schwedische Texte. In diesen Dateien hätten Sie dann Platzhalternamen für einige Texte, die Sie anzeigen möchten, und welche tatsächlichen Werte wäre. Denken Sie daran, dass die Stelle Inhaber keine Leerzeichen haben können!

en-us.properties würde enthalten

welcome_message = "welcome %user%\nplease check your weapons at the door :)"
logout_button_text = "log out"
good_bye_message = "godspeed to you %user%!"

sw-se.properties würde enthalten

welcome_message = "välkommen %user%\nvänligen lämna dina vapen vid dörren :)"
logout_button_text = "logga ut"
good_bye_message = "%user%, vi önskar dig en lycklig resa!"

Ich habe diese Funktionalität erfunden, bei der Dinge innerhalb von % Anzeichen Platzhalter sind, die nach dem Aufbewahren des Sprachtextes ersetzt werden müssen, sodass Daten aus der Sitzung oder der Datenbank in die Nachricht platziert werden können.

Beachten Sie, wie die Sprachdateien beide genau die gleichen Schlüssel enthalten, jedoch mit unterschiedlichen Werten.

Wenn Sie Text anzeigen möchten,

  • Sie überprüfen, in welcher Sprache Sie sich befinden (vielleicht kommt dies von der URL).
  • Laden Sie die entsprechende Eigenschaftendatei,
  • Holen Sie sich den Text für den konzeptionellen Platzhalter, der am gegebenen Punkt benötigt wird.
  • Ersetzen Sie alle Daten, die Inhaber in dieser Zeichenfolge platzieren.
  • und übertragen Sie das Endergebnis dem Benutzer.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top