Pyromanci
asked on
PHP/MySQL timezones screwing up
OK,
I have a problem. I'm setting up a sight that will end up holding large amounts of client data records. Because the clients can export and import their data, i have to be able to maintain session based timezones with in the site and server.
Right now my server is set to GMT. When i run the date command on the shell i see, which is correct at time of posting.
Fri Mar 18 20:04:32 GMT 2011
Then when i do hwclock --show is gives me, again this is was correct.
Fri 18 Mar 2011 08:06:22 PM GMT
Now when i tell php to change it's timezone to GMT-4 (since that is my timezone factoring in DST)
date_default_timezone_set( 'Etc/GMT-4 ');
echo date("m/d/Y g:i:s A T");
I get 03/19/2011 00:11:35 AM GMT-5 Is is totally wrong in stead of taking 5 hours away it added 5 hours.
So then I did this:
date_default_timezone_set( 'Etc/GMT+4 ');
echo date("m/d/Y g:i:s A T");
I got 03/18/2011 4:14:56 PM GMT+4. Which is the correct time. MySQL does the same thing. It seems like both are wanting to invert the time adjustments. Am i missing something on the settings?
I have a problem. I'm setting up a sight that will end up holding large amounts of client data records. Because the clients can export and import their data, i have to be able to maintain session based timezones with in the site and server.
Right now my server is set to GMT. When i run the date command on the shell i see, which is correct at time of posting.
Fri Mar 18 20:04:32 GMT 2011
Then when i do hwclock --show is gives me, again this is was correct.
Fri 18 Mar 2011 08:06:22 PM GMT
Now when i tell php to change it's timezone to GMT-4 (since that is my timezone factoring in DST)
date_default_timezone_set(
echo date("m/d/Y g:i:s A T");
I get 03/19/2011 00:11:35 AM GMT-5 Is is totally wrong in stead of taking 5 hours away it added 5 hours.
So then I did this:
date_default_timezone_set(
echo date("m/d/Y g:i:s A T");
I got 03/18/2011 4:14:56 PM GMT+4. Which is the correct time. MySQL does the same thing. It seems like both are wanting to invert the time adjustments. Am i missing something on the settings?
ASKER
There are no errors reported.
This article is kind of lengthy, but it will answer your questions about time and localization.
https://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_201-Handling-date-and-time-in-PHP-and-MySQL.html
Please read it over and then post back with a code sample showing the issue, if you still have questions.
best regards, ~Ray
https://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_201-Handling-date-and-time-in-PHP-and-MySQL.html
Please read it over and then post back with a code sample showing the issue, if you still have questions.
best regards, ~Ray
ASKER
That post didn't really give me that much information that i did not know. Nor does it cover why when i tell it -5 it adds 5 and when tell it +5 it minus's 5
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Open in new window
since some notices and warnings of time issues related are hidden in default error reporting configuration.Additionally, accepted time zones are listed in http://ar.php.net/manual/en/timezones.php