Frage

Ich habe ein Sprachpaket für eine Website erstellt, bevor, aber ich bin nicht sicher, ob das, was ich tue, ist die beste Methode.

Im Grunde alles, was ich habe, ist eine Datei mit der Definition von Variablen String-Konstanten. Üblicherweise wird ein Satz von Arrays, wo eine Anordnung bezieht sich gewöhnlich auf eine bestimmte Elemente der Website.

Dann enthält der Standortcode nur die entsprechende Datei auf einer Flagge basierte und dann Echos aus dem entsprechenden Array-Elemente.

Was sind einige Möglichkeiten, dies zu tun Wartung Kopfschmerzen und Leistung zu verringern?

War es hilfreich?

Lösung

Ich schlage vor, mit Zend_Translate . Es ist ein wenig eine Kombination der anderen Vorschläge Menschen hier links, nur mehr wartbar und besser entwickelt.

Sie können Adapter wechseln je nach Wunsch (unterstützt gettext, csv und eine Vielzahl von anderen), die Sie nicht brauchen definiert oder Globals Ihre globale Reichweite umweltfreundlich und es ist gut dokumentiert.

Andere Tipps

Die beste Option, Sie könnten mit PHP haben, ist GetText , aber nicht alle der Server haben sie eingebaut, so ist es eine Show Stopper sein kann, wenn Sie Ihren Server sind zu verwalten.

Ein paar der häufigsten Wege, dies zu tun, sind:

1) define('SOME_STRING', 'Some string'); verwenden - einfach eine andere Datei mit dieser definiert für jede Sprache gestopft hat. Dies ist sehr einfach, und Sie müssen nicht „global“ überall verwendet werden.

2) Wrap-Strings in einer Funktion: translate('My String') - das ist mehr flexibel, wie Sie Ihren Code analysieren können Listen von Zeichenkette zu erstellen, zu übersetzen und in Funktionen wie Variablen hinzufügen, zum Beispiel translate('I can count to [number]', 10); (natürlich Sie in der Regel ein kürzeren Funktionsnamen wählen, wie „_“)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top