Невозможно получить gettext (php) в Ubuntu, работающем

Следующий пример работает в Mac OS X с Apache, то есть я получаю переведенную строку, возвращаемую эхом. Но в Ubuntu с lighttpd я получаю исходный текст «Неактивная учетная запись». Я безуспешно пробовал всевозможные комбинации окружений varialbes. Это также не права доступа к файлам, потому что я могу вывести содержимое файла .mo.

<?php

//$locale = 'sv_SE.UTF-8';
$locale = 'sv_SE';

$dir = dirname(__FILE__);

// File permission is apparantly not a problem as this works...
//echo file_get_contents($dir . '/sv_SE/LC_MESSAGES/flattr.mo');

putenv("LANG=$locale");
putenv("LANGUAGE=$locale");
putenv("LC_ALL=$locale");
putenv("LC_MESSAGES=$locale");
setlocale(LC_ALL, $locale);
setlocale(LC_MESSAGES, $locale);
//setlocale(LANG, $locale);
//setlocale(LANGUAGE, $locale);

bindtextdomain('flattr', $dir);
//bind_textdomain_codeset("flattr", 'UTF-8');
textdomain('flattr');

echo _("Inactive account");

?>

У кого-нибудь есть идеи?

15
задан pthulin 10 March 2011 в 09:12
поделиться