RE: [PHP] Date weirdness

[email protected] ("Steven Staples")
Newsgroups php.general
Message-ID <00ba01ce2bf5$173208e0$45961aa0$@net>
> 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');
}

Maybe this can help you?

Steve
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.