Например, Сегодня 9:08, Вчера 19:31 или 04 июля 2013 13:54
Предлагаю Вашему вниманию функцию PHP по созданию даты.
Для этого создадим файл function.php в папке include. Файлы можете назвать и расположить по Вашему усмотрению. В файл с функцией вставляем следующий код.
Код PHP (файл function.php)
// задаём функцию формата даты и записи сегодня и вчера
function data_form($string) {
$monn = array(
'',
'января',
'февраля',
'марта',
'апреля',
'мая',
'июня',
'июля',
'августа',
'сентября',
'октября',
'ноября',
'декабря'
);
//Разбиваем дату в массив
$a = preg_split("/[^\d]/",$string);
$today = date('Ymd');
if(($a[0].$a[1].$a[2])==$today) {
//Если сегодня
return("Сегодня ".$a[3].":".$a[4]);
} else {
$b = explode("-",date("Y-m-d"));
$tom = date("Ymd",mktime(0,0,0,$b[1],$b[2]-1,$b[0]));
if(($a[0].$a[1].$a[2])==$tom) {
//Если вчера
return("Вчера ".$a[3].":".$a[4]);
} else {
//Если позже
$mm = intval($a[1]);
return($a[2]." ".$monn[$mm]." ".$a[0]." ".$a[3].":".$a[4]);
}
}
}
Теперь используем функцию
Код PHP (файл example.php)
include_once "include/function.php"; // пишем путь к файлу с функцией
$date = date("Ymd G:i");// вставляем либо статическую дату, либо из Базы Данных
$format_date = data_form($date); // получаем дату а-ля "Сегодня 18:00"
У меня функция PHP отображает другое время. Что делать?
Скорее всего на Вашему сервере установлено другое время. Возможно, он расположен в другом часовом поясе. Например, Вы в Туле купили хостинг, который располагается в Казани. На сервере соответственно будет установлено время +1, на час больше. Для этого в PHP перед кодом функции нужно вставить следующую строку принудительно указанным часовым поясом. Выглядит следующим образом.
date_default_timezone_set('Europe/Moscow'); // задаём часовой пояс по Москве
Примеры других часовых поясов ЗДЕСЬ.