<?php
/**
* Время в iso формате
* автор: Nc_Soft
* 27.05.09
*/
/*Функция форматирует дату из бд (поле timestamp или datetime) в формат iso
с учетом временного сдвига.
Сдвиг отсчитывается от локального времени системы, а не по Гринвичу*/
function date_iso($data, $shift='+0') {
$data=date('Y-m-d H:i:s', strtotime("$data $shift hour"));
$p=date_parse($data);
if ($p['error_count']) return ;
static $m_collation=array(
'января',
'февраля',
'марта',
'апреля',
'мая',
'июня',
'июля',
'августа',
'сентября',
'октября',
'ноября',
'декабря',
);
return '<span class="time">'.$p['day'].' '.
$m_collation[$p['month']-1].' '.
$p['year'].', '.
sprintf('%02d', $p['hour']).':'.sprintf('%02d', $p['minute']).'</span>';
}
echo '<br />Дата на пробу<br />';
echo date_iso('2009-05-27 01:53:32');
echo '<br />А теперь сдвинем на час вперед<br />';
echo date_iso('2009-05-27 01:53:32', '+1');
echo '<br />И на 3 часа назад<br />';
echo date_iso('2009-05-27 01:53:32', '-3');