суббота, 3 марта 2012 г.

PHP date() – месяц на русском


Работая над различными веб-проектами (как правило программирование – PHP), практически везде и всегда приходится работать с данными содержащие атрибут – даты. Например дата добавления новости на сайт. И вроде бы все предельно просто и понятно – там где нужно вывести дату, пользуемся командой PHP для вывода даты в любом заданном формате date(). Но она не умеет выводить месяц на русском языке.

В итоге я быстренько накидал функцию, которая заменит мне стандартную функцию для вывода форматированной даты и будет выводить русский месяц.

function rdate($param, $time=0) {
if(intval($time)==0)$time=time();
$MonthNames=array("Января", "Февраля", "Марта", "Апреля", "Мая", "Июня", "Июля", "Августа", "Сентября", "Октября", "Ноября", "Декабря");
if(strpos($param,'M')===false) return date($param, $time);
else return date(str_replace('M',$MonthNames[date('n',$time)-1],$param), $time);
}

Пример работы обычной команды data(«d M Y»);
Выведет результат: 01 Mar 2012

Пример работы новой функции rdate(«d M Y»);
Выведет результат: 01 Марта 2012
string rdate ( string $format [, int $timestamp = time() ] )

Во всем остальном новая функция rdate() работает точно также как и стандартная функция. Для вывода месяца в форматированной дате используется латинский символ «M». Так же возможен второй параметр функции, для указания метки времени – timestamp.
/источник/

Комментариев нет:

Отправить комментарий