Forum Webscript.Ru
Программирование => PHP => Тема начата: Neter от 16 Августа 2002, 15:30:37
-
Вобщем-то у меня всё нормально извлекается, только есть одно "но"... сервер находится в другом часовом поясе нежели аудитория моего сайта..
Как сделать так чтоб дата была нормальная?
-
$my_date=mysql_fetch_........
list($date,$time)=split(" ",$my_date);
list($year,$month,$day)=split("-",$date);
list($hour,$minute,$sec)=split(":",$time);
$stamp= mktime($hour,$minute,$sec,$month,$day,$year)+($разница в часах*3600);
$real_date=date("Y-m-d H:i:s",$stamp);
-
select DATE_FORMAT(DATE_ADD(date_field, INTERVAL 2 hour),\'%Y.%m.%d %H:%i:%s\') as real_date ...
А если уж парсить дату руками, то субстрингами будет на два порядка быстрее.
И часы прибавлять в мктайме удобнее и проще так
stamp= mktime($hour+2,$minute,$sec,$month,$day,$year)
-
RomikChef А как ты догадался, что мне надо два часа прибавить?
-
[OFF]
AlieN
Не понимаю, зачем юзать регулярные там, где обычные строковые функции годятся. По-моему, это есть плохой стиль, кроме замедления кода.
(например, зачем тут split вместо explode)
[/OFF]
-
IMHO повесить корректировку даты на базу самый производительный вариант...
-
Если timestamp - то при извлечении прибавляем нужное число, в противном случае - при записи.
-
Да всё понятно, то что Alien предложил я бы мог и сам сделать, правда мне этот вариант ен понравился и я решил узнать как это сделать побыстрее и поудобнее... RomikChef, я те уже цистерну пива должен...