Gettext, не отображается
-
08-07-2019 - |
Вопрос
Я пытаюсь загрузить свои переводы .mo, используя следующий код, но это не работает. У меня есть php gettext ext. включен в моем phpinfo () и все необходимые локали установлены. Я что-то пропустил?
$locale = "en_US";
putenv("LC_ALL=$locale");
setlocale(LC_ALL, $locale);
bindtextdomain("messages", "./locale");
textdomain("messages");
Мой файл .mo находится в ./ locale / en_US / messages.mo
Решение
Когда поток apache загружает файл .mo, он не будет перезагружать его, пока поток apache не будет переработан. Поэтому, если вы обновляете файл .mo и хотите быть уверены, что ваш php использует этот новый файл .mo, вам на самом деле нужно либо перезапустить apache, либо использовать другое имя для файла mo.
В любом случае, я бы установил переменную среды LANG.
Другие советы
Возможно, вам нужно изменить путь так, чтобы он был абсолютным, а не относительным.