Suche…


Syntax

  • string gettext (string $message)

Strings mit gettext () lokalisieren

GNU gettext ist eine Erweiterung innerhalb von PHP, die in der php.ini enthalten sein php.ini :

extension=php_gettext.dll #Windows
extension=gettext.so #Linux

Die gettext Funktionen implementieren eine NLS-API (Native Language Support), mit der Sie Ihre PHP-Anwendungen internationalisieren können.


Das Übersetzen von Zeichenfolgen kann in PHP erfolgen, indem das Gebietsschema festgelegt wird, Ihre Übersetzungstabellen eingerichtet werden und gettext() für jeden zu übersetzenden String gettext() .

<?php
// Set language to French
putenv('LC_ALL=    fr_FR');
setlocale(LC_ALL, 'fr_FR');

// Specify location of translation tables for 'myPHPApp' domain
bindtextdomain("myPHPApp", "./locale");

// Select 'myPHPApp' domain
textdomain("myPHPApp");

myPHPApp.po

#: /Hello_world.php:56
msgid "Hello"
msgstr "Bonjour"

#: /Hello_world.php:242
msgid "How are you?"
msgstr "Comment allez-vous?"

gettext () lädt eine vorgegebene .po-Datei, eine .mo-Datei. welche die zu übersetzenden Strings wie oben abbildet.

Nach diesem kleinen Einrichtungscode werden Übersetzungen in der folgenden Datei gesucht:

  • ./locale/fr_FR/LC_MESSAGES/myPHPApp.mo .

Wenn Sie gettext('some string') aufrufen und wenn 'some string' in der .mo Datei übersetzt wurde, wird die Übersetzung zurückgegeben. Andernfalls wird 'some string' unübersetzt zurückgegeben.

// Print the translated version of 'Welcome to My PHP Application'
echo gettext("Welcome to My PHP Application");

// Or use the alias _() for gettext()
echo _("Have a nice day");


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow