Формат локальной даты на PHP или MySQL

Если на сервере установлена локаль, то например так для PHP:

<?
//временная зона, список http://php.net/manual/en/timezones.php
date_default_timezone_set('Europe/Moscow');
//локаль
setlocale(LC_TIME, 'ru_RU.UTF8'); //Пятница, 23 Март 2012 MSK 23.03.2012
//конвертирование секунд в локальную дату
echo strftime('%A, %d %B %Y %Z %x', time()); //1332450000

//для функции strtotime если конвертируется локальная дата, то должна быть GNU формата http://www.gnu.org/software/shishi/manual/html_node/Date-input-formats.html
//обратное конвертирование локальной даты в секунды
echo strtotime('Friday, 23 March 2012'); //1332450000

Для MySQL локальная дата:

SET lc_time_names = 'ru_RU'; -- указываем локаль
SET time_zone = '+4:00'; -- временная зона если нужно http://dev.mysql.com/doc/refman/5.5/en/time-zone-support.html
SELECT DATE_FORMAT(NOW(),'%e %M, %W'); -- 23 Марта, Пятница
SELECT DATE_FORMAT(FROM_UNIXTIME(1242733660),'%e %M, %W'); -- 19 Мая, Вторник
SELECT LOWER(DATE_FORMAT(NOW(),'%e %M %Y г., %W, %H:%i')); -- 23 марта 2012 г., пятница, 12:34
Запись опубликована в рубрике Программирование с метками , , , . Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт защищен политикой конфиденциальности и условиями использования reCAPTCHA и Google.