Ich habe eine Website. Ich versuche, gettext zur Arbeit zu bringen, damit meine englischen, schwedischen und norwegischen Seiten auftauchen können. Ich kann es nicht zur Arbeit bringen. Was habe ich falsch gemacht?PHP und Gettext funktionieren nicht auf meinem Server
Dies ist meine Config-Code:
// define constants (defualt - danish)
$lang = 'da_DA';
$lang_short = '';
$lang_prefix = 'da';
if (isset($_GET['lang']))
{
switch($_GET['lang'])
{
case 'en':
$lang = 'en_EN';
$lang_short = 'en/';
$lang_prefix = 'en';
break;
case 'se':
$lang = 'se_SE';
$lang_short = 'se/';
$lang_prefix = 'se';
break;
case 'no':
$lang = 'no_NO';
$lang_short = 'no/';
$lang_prefix = 'no';
break;
}
}
define('LANG', $lang_short);
define('LANG_PREFIX', $lang_prefix);
putenv("LC_ALL=". $lang);
bindtextdomain('messages', ROOT .'lang/');
Und mein Weg ist /var/www/rssbot.dk/lang/
. Soll ich chmod richtig machen, oder ...?
Wo haben legen Sie die .mo-Dateien unter 'lang'? Haben Sie eine '/ var/www/rssbot.dk/lang/en_DE/LC_MESSAGES/messages.mo'? Probieren Sie auch 'locale -a' aus, um zu sehen, ob alle Gebietsschemas verfügbar sind. –
Ja „Pfad“ und -a seine Rückkehr nach locale (C en_GB.utf8 en_US.utf8 POSIX ) – ParisNakitaKejser
mich korrigieren, wenn ich falsch bin, aber ich bin nicht sicher, de_DE ein gültiges Gebietsschema ist. Versuchen Sie 'en_US' oder vielleicht nur' en', das regionenneutral sein sollte. Möglicherweise müssen Sie auch andere Gebietsschemas als Englisch auf Ihrem Betriebssystem installieren, damit die anderen Sprachen funktionieren. –