根据数组值切换时区

时间:2017-03-29 01:12:33

标签: php datetime

我正在获得一个包含大约200条记录的数组,每条记录都有一个日期时间和时区,我的问题是,如何根据显示信息的城市/国家/地区显示每个日期时间。

array(
   'date'=>'2017-04-02T01:00:00',
   'timezone'=>'Europe/London'
)

假设您在纽约,您如何在date value时区显示America/New_York
我想将date value显示为Sun 2 of April at 1:00:00PM

2 个答案:

答案 0 :(得分:0)

你可以通过设置时区

来实现
$mytimezone='"America/New_York"';
date_default_timezone_set($mytimezone);

答案 1 :(得分:0)

您可以使用date_default_timezone_set()设置所需的输出格式,并同时使用strtotime()date(),以确保您的输出基于阵列中正确的时区:

 date_default_timezone_set("America/New_York");
 echo date("r",strtotime($array['date']." ".$array['timezone']));

使用您的示例数据,输出将是“星期六,2017年4月1日20:00:00 -0400”。希望这有帮助