Ответ 1
Попробуйте это,
setlocale(LC_TIME, 'el_GR.UTF-8');
Я использую следующее, чтобы вывести полное имя месяца на греческом языке.
setlocale(LC_TIME, 'el_GR');
strftime("%B");
Это работает, за исключением строки вывода ISO-8859-7 (страница греческого кода), что является проблемой, так как мне нужна строка UTF-8. Я мог бы передать это через iconv, чтобы преобразовать его, но мне было интересно, есть ли способ сделать это, не прибегая к дополнительной функции.
Не могли бы вы каким-то образом сообщить strftime для вывода строки UTF-8 в этом случае?
Попробуйте это,
setlocale(LC_TIME, 'el_GR.UTF-8');
Просто ответьте на ZZ Coder ответ:
если setlocale(LC_TIME, 'el_GR.UTF-8');
не работает в linux, проверьте свои активированные локали, запустив locale -a
из оболочки.
Если вы не видите el_GR.UTF-8
, откройте /etc/locale.gen
и раскомментируйте соответствующую строку.
Затем запустите locale-gen
, и вы должны быть в порядке.