Попробуйте сначала задать английское название своей если это не
подействует, попробуйте формат cc_RR. Если и это не поможет, узнайте у администратора сервера, установлена ли локаль, которая обычно бывает расположена
Функция strftime() применяется для задания формата временной метки типа date(), но на местном языке. Ей передается строка формата и необязательная временная метка. Если временная метка не задана, передается текущее время компьютера. Функция применяется в сочетании с set- locale():
setlocale(LC_TIME, $locale); echo(strftime("%c"));
Здесь был применен спецификатор формата %с, устанавливающий формат даты и времени, предпочтительный для текущей локали. Спецификатор %с создает довольно длинную строку, поэтому часто получают из локали саму строку формата. В тех странах, где принят формат день/месяц-год, строка формата задается как %d/%m-%Y, тогда как в других странах формат должен быть %m/%d/%Y.
В такой ситуации функция strftime() может даже не потребоваться и достаточно будет функции date(). Функция strftimeC нужна, только если требуется включить название дня недели или месяца.
Ниже приводится список спецификаторов формата функции strftirneQ (табл. 22.2):
Извлечение информации с помощью localeconv()
Функция localeconvO появилась в РНР версии 4.0.5 и дает информацию о форматировании строк, представляющих денежные единицы. Сама она ничего не форматирует, но позволяет узнать правила, действующие в конкретной локали.
Данная функция возвращает ассоциативный массив со стандартными элементами типа decimal_point, thousarids_sep и т. д. Ее полное описание можно найти в электронной документации. Этими элементами можно воспользоваться для форматирования строк, например в функции number_fornat():
<?php
Jamount = 123456.123;
setlocale(LC_ALL, 'en_US');
= localeconvO;
echo(number_format($amount,
$locale_info['frac_digits'], $locale_info['mon_decimal_point'], $locale_info['mon_thousands_sep']));
setlocale(LC_ALL, 'da_DK'); $locale_info = localeconv();
echo( numbe r_format ({amount,
$locale_info['frac_digits'], $locale_info['mon_decimal_point' ], $locale_info['mon_thousands_sep']));
?>
Первая команда echo выводит 123,456.12, а вторая - 123.456,12. В простых задачах применять localeconvO нетрудно, но если потребуется учесть всю информацию, которую она способна представить, могут возникнуть сложности.
Мы получим большой объем сведений о расположении символа денежной единицы и выводе денежных сумм. Следующая функция также сообщит нам, должен ли иметься пробел между двумя частями показываемой суммы. Функция использует эту информацию, чтобы возвратить форматированную строку: