I'm trying to troubleshoot and solve this problem: the server I'm working on (php 5.2.9 on Linux), has the correct local time (America/Buenos_Aires):
user@server [/home/site/public_html]$ date
Mon Nov 1 17:11:14 ART 2010
php.ini
is set with date.timezone = "America/Buenos_Aires"
I also tried to set the timezone directly in the script with
<?php
ini_set('display_errors', true);
error_reporting(E_ALL|E_STRICT|E_NOTICE);
//date_default_timezone_set("America/Buenos_Aires");
//echo date_default_timezone_get(), "<br>";
echo "ini: ", ini_get('date.timezone'), "<br>";
$now = date("H:i:s T I");
$nowdate = date("Y-m-d");
echo $nowdate." ".$now;
?>
ama boşuna, sonuç
ini: America/Buenos_Aires
2010-11-01 18:11:14 ARST 1
okumak gerektiği zaman 17:11
(O bir saat öncesinde sürekli olarak bulunuyor). Ben burada ve web üzerinde buldum tüm işaret
- (denedim) date_default_timezone_set
- (o ayarlanır) php.ini içinde date.timezone ayarı
- (değilim) istemci zaman sunucu zaman kafa karıştırıcı.
Herhangi bir fikir?
EDIT: As suggested, I checked and as you can see in the code, PHP thinks it should be applying DST, and Argentina decided to not apply it this year. Any option besides waiting for a patch?
EDIT 2: I tried dumping the timezones transition as suggested. I got the following:
The timezone America/Buenos_Aires switches to standard time on 20 Mar 2011 @ 02:00.
The new GMT offset will be: -10800 (ART)