Fragen aktualisiert, anstatt eine neue Frage zu machen ...Der effizienteste Weg, Sprachdateien in PHP zu erstellen?
ich mein erstes Mal tun, jede Art von Mir baue, das wird wirklich ein paar alternativen Sprachen anderes dann Englisch auf meiner sozialen Netzwerk-Site zur Verfügung stellen mag Sprachübersetzung also bitte mit mir.
Ich forsche also bin ich al ear und offen für Ideen und ich habe schon viel hier ist, sind die Fragen.
1)
Was bedeutet i18n, ich sehe es oft, wenn sie auf SO Sprachübersetzung forschen?
2)
Die meisten Leute sagen Verwendung gettext PHP eine Erweiterung oder die Unterstützung für sie hat,
gut ich es der Erforschung wurden, und ich habe ein grundlegendes Verständnis davon, soweit ich es sagen kann, ist ein viel zusätzliche Arbeit, um diese Route zu gehen,
Ich meine Codierung meiner Website, um seine Funktionen zu verwenden, dh; _ ('Hallo Welt, ich bin in Englisch für jetzt') oder sonst gettext ('Hallo Welt, ich bin in Englisch für jetzt') ist kein Problem, da jede Route, die ich gehe, wird das erfordern.
Aber dann müssen Sie Gettext auf Ihrem Server installieren und es funktioniert,
dann einige spezielle Editoren verwenden, um spezielle Dateien zu erstellen und sie kompilieren, denke ich?
Klingt wie ein Schmerz, ich verstehe, dass dies der beste Weg sein sollte, um zu gehen, aber jeder scheint zu sagen, dass es ist.
Also kann mir jemand sagen, warum das der Weg ist?
3)
Ich mag die Einfachheit dieses Ansatzes wirklich, nur eine Sprache Array Aufbau und den Aufruf der Phrase, die Sie wie im folgenden Beispiel in einer Funktion benötigen, würden Sie dann einfach ein File mit der entsprechenden Sprache Array.
Was ich wirklich wissen möchte ist, wäre dies die weniger leistungsfähigere Methode auf einer stark frequentierten und ziemlich großen Website im Vergleich zur Verwendung von gettext und wenn ja, kannst du erklären, warum bitte?
<?PHP
//Have seperate language files for each language I add, this would be english file
function lang($phrase){
static $lang = array(
'NO_PHOTO' => 'No photo\'s available',
'NEW_MEMBER' => 'This user is new'
);
return $lang[$phrase];
}
//Then in application where there is text from the site and not from users I would do something like this
echo lang('NO_PHOTO'); // No photo's available would show here
?>
* einige Code aus brianreavis Antwort verwendet unter
Sie wissen, dass Sie _ in einem Array nicht verwenden müssen, aber ja, Sie sollten wahrscheinlich die PHP-Erweiterungen verwenden, anstatt Ihre eigene zu rollen. – SeanJA