2012-04-19 1 views
1

Я переводил сайт, и все работало нормально, но когда я помещал файлы в онлайн-сервер (linux), перевод работал, но с акцентом буквы на испанском языке выглядят следующим образом: Кто-нибудь знает, как я могу это исправить?.mo файл в кодировке utf-8 не работает с подчеркнутыми словами на сервере linux

+0

Любой конкретный язык программирования? –

ответ

0

Появилось как где? Если он находится на веб-странице, вам нужно убедиться, что перевод находится в том же наборе символов, что и остальная часть HTML, и что этот набор символов правильно отмечен сверху.

+0

это выглядит как: suscríbase (слово на сайте), это похоже на suscr base. – otavio

1

Если вы используете PHP, вам, вероятно, необходимо добавить функцию bind_textdomain_codeset, чтобы сообщить системе, что ваш mo-файл возвращает UTF-8 (или то, что вы указали в файле PO). Итак, что-то вроде этого должно быть трюком:

$language = 'de_DE'; 
bindtextdomain($language, APP_ROOT.'locale'); // Define domain 
textdomain($language); // Choose domain, translation is looking for in locale/de_DE/LC_MESSAGES/de_DE.mo now 
bind_textdomain_codeset($language, 'UTF-8'); // Tell the system out MO files will return UTF8 
+0

Чтобы быть точным, вам нужно сделать это, если ваш сервер работает под языковой версией, отличной от UTF-8. Если среда сервера имеет значение «LC_CTYPE», например, 'en_US.UTF-8', по умолчанию это должно быть нормально. –

0

Кажется, у меня такая же проблема. Невозможно разрешить символы..

У меня есть кодировка, правильно установленная в верхней части моего html (utf-8), а файл .po также находится в utf-8. Я попробовал команду bind_textdomain_codeset, но не работал.

Сервер - это Linux.

[РЕШЕНО]

Добавление этой строки: bind_textdomain_codeset ("по умолчанию", "UTF-8");

примечание по умолчанию вместо языкового домена. Интересно, почему ..

Смежные вопросы