Home » Php » datetime – Converting between timezones in PHP

datetime – Converting between timezones in PHP

Posted by: admin April 23, 2020 Leave a comment

Questions:

I am converting this time and date:

Thu, 31 Mar 2011 02:05:59 GMT

To the following time and date format:

Monday March 28 2011 4:48:02 PM

I am using the following PHP code to accomplish this, but I want to convert all time zones to PST/PDT. I looked at the PHP manual and saw this date_default_timezone_set() but I am not sure how to implement that into the code I have below.

$date = $messages[0]->CreationTime;
echo date('l F j Y g:i:s A I', strtotime($date))
How to&Answers:

I would not use date_default_timezone_set for general TZ conversions. (To clarify… if this is for display purposes, script wide, then using the default timezone is a reasonable thing to do.)

Instead, I would use something like:

$tz = new DateTimeZone('America/Los_Angeles');

$date = new DateTime('Thu, 31 Mar 2011 02:05:59 GMT');
$date->setTimezone($tz);
echo $date->format('l F j Y g:i:s A I')."\n";

Answer:

$date = $messages[0]->CreationTime;
date_default_timezone_set('America/Los_Angeles');
echo date('l F j Y g:i:s A I', strtotime($date));

See this list for available timezones that get passed into the function