PHP

Преобразуем формат даты из MySQL в календарный (простой)

При работе с базой данных MySQL часто используется тип поля, для ввода даты, TIMESTAMP, оно формирует число и дату такого вида:
2009-09-17 08:26:21
Чтобы преобразовать в привычное для нас видение дату, используем регулярное выражение и напишем функцию. Код этой функции представлен в листинге №1.

Листинг № 1 - Функция конвертации даты из MySQL формата в календарный.
<?php

function ref_date($date)
{
       preg_match("|([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})\s([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2})|",$date,$out);
    return "$out[3].$out[2].$out[1] $out[4]:$out[5]:$out[6]";
}

?>

В функцию preg_match, для сохранения данных поиска добавляется третий элемент $out. Это массив, в котором содержаться все найденные элементы по шаблону. Элемент массива с нулевым индексом имеет полное соответствие шаблону, т.е. не разделён на части. Следовательно дальше идут элементы описанные в шаблоне по порядку слева на право. Таким образом год имеет в массиве индекс 1, а число индекс 3. Меняем их при выводе местами и получаем представление даты "по-русски".
Вариант второй.

Листинг № 2 - Форматирование даты происходит с помощью встроенной функции MySQL DATE_FORMAT.
<?php

$r = mysql_query("SELECT DATE_FORMAT(NOW(), '%d.%m.%Y %H:%i:%s')");
$e = mysql_fetch_array($r);
echo $e[0]; // покажет текущее время сервера

?>

Урок закончен
Добавлено: 24 Августа 2013 04:10:55 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...