Echo Date("y-m-d H:i:s",0);

  • Автор темы buts
  • Дата начала
Статус
Закрыто для дальнейших ответов.
B

buts

#1
Вот код

Код:
<?php
echo date("Y-m-d H:i:s",0);
?>
Выводит
1970-01-01 03:00:00

(Денвер, локалхост)


Откуда беруться эти три часа?
Или Unix эра началась в три утра?

Меняю на компе часовые пояса, от этого не зависит!
 
J

j_man

#2
Хм. прикольно... раньше не замечал почему-то. Но, боюсь, что это все-таки часовой пояс. (Ты когда пояса поменяешь на компе перезапусти сервер :). Видимо он часовой пояс куда-то себе на старте заапоминает.)
 
G

Gisma

#3
Стопудово:) апач такой вот Глюкъ
Меняй зону и перезапускаешь апач:)
 
S

_serg_

#4
системное время может расходиться с железным (которое в биосе)
 
S

_serg_

#6
никак
апач тут нипричем
Код:
serg$ perl -e ' use Data::Dumper; print Dumper(localtime(0))';
$VAR1 = 0;
$VAR2 = 0;
$VAR3 = 3;
$VAR4 = 1;
$VAR5 = 0;
$VAR6 = 70;
$VAR7 = 4;
$VAR8 = 0;
$VAR9 = 0;
сек
мин
час
день
мес (0-11)
год
...
 
S

_serg_

#7
хм.. поясню - а то нагнал туману... :(
время возвращаемое системой не зависит от часового пояса. это значение железного регистра в микросхеме на материнской плате.
на этом этапе речь о часовых поясах не идет.

если перацыонка хочет показать текущее время, она смотрит свой часовой пояс и подгоняет это время в соответствии с константой часового пояса (часовых поясов более 24 и их колличество постоянно меняется то в большую, то в меньшую сторону. поэтому на железном уровне хранится универсальное время)
система берет это увеличенное (или уменьшенное) время и с помощью заданного алгоритма приводит в нужный формат.

теперь понятно почему чел менял на компе часовые пояса а у него ничего не получалось?
надо выставить железное время в утс и правильно скорректировать системное к своему часовому поясу.
теперь результат будет корректен.
 
J

j_man

#8
2 _serg_ :
Нужно всего лишь апач перезапустить... Проверено... :(
Хотя может ты тоже прав.... приду домой попробую :)
 
J

j_man

#10
Насколько я помню речь шла о Денвере.... => Апач на винде... и как-то я подразумевал именно винду (может потому что у меня винда :()
 
B
#11
Для: j_man
Ты прав, надо было просто сервак рестарнуть, и все ок
Действительно дело в часовых поясах

И да, дело все это не винде
Денвер, кароче apache
 
S

SOFTOBZOR.ru

#12
Да вы че???
+3 это часовой пояс от гринвича до москвы.
Смени часовой пояс и готово, что тут гадать то???

При чем тут Winda не Winda а БИОС это вообще гениально;)
Улыбнули не нашутку - спасибо!
 
Статус
Закрыто для дальнейших ответов.