On Thu, Mar 28, 2013 at 3:40 PM, Larry Martell <larry.mart...@gmail.com> wrote:
> On Thu, Mar 28, 2013 at 2:44 PM, Steven Staples <sstap...@mnsi.net> wrote:
>>> I think I am losing my mind. I have some time zone converting code, and I
>>> just don't understand what I am seeing. Also my system seems to return the
>>> wrong time after I do some date operations on unrelated objects.
>>>
>>> This is from a machine that is in eastern time. I want to convert to, for
>>> example central time:
>>>
>>> $ndate = new Date(date("Y-m-d H:i:s"));
>>> echo $ndate->format("%Y-%m-%d %H:%M:%S");
>>> 2013-03-28 15:35:07  <- this is the correct time
>>>
>>> $ndate->setTZbyID("EDT");
>>> echo $ndate->format("%Y-%m-%d %H:%M:%S");
>>> 2013-03-28 15:35:07 <- still correct
>>>
>>> $ndate->convertTZbyID("US/Central");
>>> echo $ndate->format("%Y-%m-%d %H:%M:%S");
>>> 2013-03-28 10:35:07 <- this is wrong it should be 14:35:07
>>>
>>> $xdate = new Date(date("Y-m-d H:i:s"));
>>> echo $xdate->format("%Y-%m-%d %H:%M:%S");
>>> 2013-03-28 19:35:07 <- HUH? This is wrong - should be 15:35:07
>>>
>>> What in the world is going on here?
>>>
>>
>> I found this function a while back when I was converting UTC to EST... 
>> simple task I know, but still...
>>
>> ( I am sorry to whomever wrote this, I didn't keep the source where I found 
>> it )
>>
>> function convert_time_zone($date_time, $from_tz = 'UTC', $to_tz = 
>> 'America/Toronto')
>> {
>>         $time_object = new DateTime($date_time, new DateTimeZone($from_tz));
>>         $time_object->setTimezone(new DateTimeZone($to_tz));
>>         return $time_object->format('Y-m-d H:i:s');
>> }
>
> I don't seem to have the DateTime object. We are running 5.1.6 and
> that was added in 5.2.0. We are getting the Date module from an
> external extension. I'll have to see about upgrading.

I've upgraded to 5.3.3, got rid of the external Date extension and
implement your solution. It's working perfectly. Thanks much!

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to