Załóżmy ten kod:Możliwy błąd PHP z date_default_timezone_set i datą?
<?php
date_default_timezone_set('UTC');
$time = gmmktime(14, 50, 0, 5, 12, 2013);
echo date('Y-m-d H:i:s O', $time).'<br />';
echo gmdate('Y-m-d H:i:s O', $time).'<br />';
date_default_timezone_set('GMT');
$time = gmmktime(14, 50, 0, 5, 12, 2013);
echo date('Y-m-d H:i:s O', $time).'<br />';
echo gmdate('Y-m-d H:i:s O', $time);
?>
Na moim lokalnym serwerem otrzymuję komunikat:
2013-05-12 14:50:00 +0000
2013-05-12 14:50:00 +0000
2013-05-12 14:50:00 +0000
2013-05-12 14:50:00 +0000
Ale na produkcji ten sam kod produkuje:
2013-05-12 10:50:00 -0400
2013-05-12 14:50:00 +0000
2013-05-12 14:50:00 +0000
2013-05-12 14:50:00 +0000
Zmiana czasu maszynie nie robi w żaden sposób nie wpływają na wynik.
Niektóre info:
$ date +%Z
GMT
$ date +%z
+0000
- PHP 5.3.25 (CLI) (powierzchnia: 11 maja 2013 09:54:00)
- CentOS zwolnić 5,9 (Final)
Dowolny PHP uwagi lub ostrzeżenia w dziennikach serwera? – Jocelyn
@Jocelyn On nie napotyka żadnych błędów ani ostrzeżeń, to '-0400' co zmienia –
@ Mr.Alien Czytałem już pytanie. Nie możesz się dowiedzieć, czy jest coś w dzienniku błędów, czy nie. – Jocelyn