在PHP中的时区之间转换

FAF*_*OHI 31 php timezone datetime

我正在转换这个时间和日期:

Thu, 31 Mar 2011 02:05:59 GMT
Run Code Online (Sandbox Code Playgroud)

到以下时间和日期格式:

Monday March 28 2011 4:48:02 PM
Run Code Online (Sandbox Code Playgroud)

我使用以下PHP代码来完成此任务,但我想将所有时区转换为PST/PDT.我查看了PHP手册并看到了这个,date_default_timezone_set()但我不知道如何将其实现到我下面的代码中.

$date = $messages[0]->CreationTime;
echo date('l F j Y g:i:s A I', strtotime($date))
Run Code Online (Sandbox Code Playgroud)

Mat*_*hew 77

我不会date_default_timezone_set用于一般的TZ转换.(为了澄清......如果这是出于显示目的,脚本范围广泛,那么使用默认时区是合理的事情.)

相反,我会使用类似的东西:

$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";
Run Code Online (Sandbox Code Playgroud)