|
|
|
| Функция форматирования даты MySQL DATETIME в более читабельный вариант. Может кому пригодится.
<?php
function obtaindate($strdate)
{
date_default_timezone_set('UTC');
$date = explode(" ", $strdate);
$firstpart = explode("-", $date[0]);
$secondpart = explode(":", $date[1]);
$past['year'] = $firstpart[0];
$past['month'] = $firstpart[1];
$past['day'] = $firstpart[2];
$past['hours'] = $secondpart[0];
$past['minutes'] = $secondpart[1];
$past['seconds'] = $secondpart[2];
$present['year'] = date("Y");
$present['month'] = date("m");
$present['day'] = date("d");
// $present['hours'] = date("H");
// $present['minutes'] = date("i");
// $present['seconds'] = date("s");
$yesterday = date('d', strtotime('-1 day'));
if ($past['year'] = $present['year'] and $past['month'] = $present['month'] and $past['day'] == $present['day'])
{
$result = "В ".$past['hours'].":".$past['minutes']."";
}
else if ($past['year'] = $present['year'] and $past['month'] = $present['month'] and $past['day'] = $yesterday)
{
$result = "Вчера в ".$past['hours'].":".$past['minutes']."";
}
else
{
$result = "".$past['day'].".".$past['month'].".".$past['year']." в".$past['hours'].":".$past['minutes']."";
}
return $result;
}
echo obtaindate("2009-07-11 01:46:00");
?>
|
| |
|
|
|
|
|
|
|
для: ZC
(11.07.2009 в 02:42)
| | попытка подогнать время в рамки текущих суток как-то не вяжется с выбором UTC-зоны...
Впрочем, каждому своё. | |
|
|
|
|
|
|
|
для: ZC
(11.07.2009 в 02:42)
| | >Функция форматирования даты MySQL DATETIME в более читабельный вариант
Не уловил тонкости... А почему DATE_FORMAT не подходит для этого? | |
|
|
|
|
|
|
|
для: ZC
(11.07.2009 в 02:42)
| | я использовал такой вариант (дата хранится в поле "date_create" типа TIMESTAMP):
list($year, $month, $day,$time) = split ('[-[:space:]]', $sql_ar['date_create']);
echo "<p>$day.$month.$year</p>\r\n";
Просто формат даты не использовал, так как sql не дает дату в виде таймштампа. Может я не прав, и можно было обойтись форматом, но sql выдает дату так: "2009-07-11 01:46:00". Разве это можно просто отформатировать?
П. С.
Ща глянул в справочник, вроде можно так:
SELECT UNIX_TIMESTAMP(date_create)
и тогда запрос вернет классический таймштамп с которым можно работать в ПХП, как и с другими таймштампами. | |
|
|
|