On Thu, Mar 28, 2013 at 3:40 PM, Larry Martell <larry.martell@xxxxxxxxx> wrote: > On Thu, Mar 28, 2013 at 2:44 PM, Steven Staples <sstaples@xxxxxxxx> 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