Posts Tagged ‘дата’

DATE_FORMAT дни недели и название месяцев по русски

Суббота, апреля 6, 2013

В MySQL есть очень удобная функция DATE_FORMAT

Однако при первом использовании оказалось что символьные обозначения дней недели и месяцев выводятся на английском языке. А как удобно было бы получить эти данные на русском языке

Этого оказывается можно легко достичь, достаточно выполнить запрос

SET lc_time_names = 'ru_RU';

раньше запроса в котором используется функция DATE_FORMAT.

Как хранить дату в MySQL

Среда, октября 5, 2011

1. Хранить дату в mysql в TIMESTAMP.
2. Всегда в PHP задавать временную зону пользователя функцией date_default_timezone_set().
3. Доставать значение TIMESTAMP из БД и переводить его в нужный формат функцией date($format, $timestamp) в PHP.

Функция STR_TO_DATE MySQL

Вторник, февраля 8, 2011

Преобразовывает дату в MySQL формат

SELECT STR_TO_DATE(  “07.02.2011 10:22:43″,  “%d.%m.%Y %H:%i:%s” ) ;

параметры те же что в DATE_FORMAT

Функция DATE_FORMAT MySQL

Вторник, февраля 8, 2011

SELECT DATE_FORMAT(“2011-02-08″,’%d.%m.%Y’);

%M Название месяца (январь…декабрь)

%W Название дня недели (воскресенье…суббота)

%D День месяца с английским суффиксом (0st, 1st, 2nd, 3rd и т.д.)

%Y Год, число, 4 разряда

%y Год, число, 2 разряда

%X Год для недели, где воскресенье считается первым днем недели, число, 4 разряда, используется с ‘%V’

%x Год для недели, где воскресенье считается первым днем недели, число, 4 разряда, используется с ‘%v’

%a Сокращенное наименование дня недели (Вс…Сб)

%d День месяца, число (00..31)

%e День месяца, число (0..31)

%m Месяц, число (00..12)

%c Месяц, число (0..12)

%b Сокращенное наименование месяца (Янв…Дек)

%j День года (001..366)

%H Час (00..23)

%k Час (0..23)

%h Час (01..12)

%I Час (01..12)

%l Час (1..12)

%i Минуты, число (00..59)

%r Время, 12-часовой формат (hh:mm:ss [AP]M)

%T Время, 24-часовой формат (hh:mm:ss)

%S Секунды (00..59)

%sСекунды (00..59)

%p AM или PM

%w День недели (0=воскресенье..6=суббота)

%U Неделя (00..53), где воскресенье считается первым днем недели

%u Неделя (00..53), где понедельник считается первым днем недели

%V Неделя (01..53), где воскресенье считается первым днем недели. Используется с `%X’

%v Неделя (01..53), где понедельник считается первым днем недели. Используется с `%x’

%% Литерал `%’.

Вордпресс. Даты по-русски.

Четверг, января 14, 2010

Любой движок имеет свои недостатки с точки зрения отдельно взятого пользователя.

Не стал исключением и движитель этого форума. Что именно меня не устроило? Формат отображения дат. Ну что это, пишется например ‘Январь 13th, 10′. Конечно, можно въехать что это ’13 января 2010 года’, но ведь куда удачнее когда ’13 января 2010 года’ пишется именно так. Заглянув настройки обрадовался, вот оно – формат отображения даты. Однако оказалось не все так просто. На какое бы значение я не менял, а даты постов оставалась в прежнем формате. Може так только в дефолтной теме.

Заглянув в файл index.php в папке wp-content/themes/default обнаружил что функция the_time вызывается с параметром ‘F js, y’, то есть  формат даты задается явно и от настроек не зависит. Возможно это недоработка создателей темы или создателей вордпресса. Ни в том ни в другом случае легче нам не сановится.

Решение траблы достаточно простое: заменяем кусочек кода

the_time(‘F js, y’)

на

the_time(get_option(‘date_format’))

Теперь, изменения фортамта отображения в настройках даты будут иметь силу.

Устанавливаем в настройках формат ‘j F Y года’.

Однако, взглянув на результат видим ’13 Январь 2010′. Опять как-то не по-русски. Окончательно привести дату к русскому виду поможет плагин MaxSite Russian Date. У меня он был установлен автоматически при инсталяции  блога. Если такого плагина в списке не оказалость то качнуть его можно по ссылке: http://maxsite.org/page/russian-date.

Достаточно активировать плагин в разделе Администрирование и даты постов приобретут привлекательный вид.