我正在尝试将当前时间转换为 UTC 并将 UTC 转换为当前时区。
这是我所做的:
$schedule_date = new DateTime($triggerOn, new DateTimeZone('UTC') );
$triggerOn = $schedule_date->format('Y-m-d H:i:s');
echo $triggerOn;
输出值不会改变,唯一改变的是格式。
字符串$triggerOn
是根据生成的America/Los_Angeles
时区
这是我的字符串之前和之后的样子:
BEFORE 04/01/2013 03:08 PM
AFTER 2013-04-01 15:08:00
所以这里的问题是 DateTime 不会转换为 UTC。
您正在寻找的是这样的:
$triggerOn = '04/01/2013 03:08 PM';
$user_tz = 'America/Los_Angeles';
echo $triggerOn; // echoes 04/01/2013 03:08 PM
$schedule_date = new DateTime($triggerOn, new DateTimeZone($user_tz) );
$schedule_date->setTimeZone(new DateTimeZone('UTC'));
$triggerOn = $schedule_date->format('Y-m-d H:i:s');
echo $triggerOn; // echoes 2013-04-01 22:08:00
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)