如何从给定的时间戳和PHP中的GMTOffset值计算时间戳?

时间:2018-08-08 10:42:36

标签: php datetime timezone-offset gmt timestamp-with-timezone

当前,我正在使用API​​进行航班搜索,以显示航班详细信息。在API响应中,返回的日期和GMTOffset很少。我需要将其转换为巴基斯坦标准时间。 API响应如下所示:

DepartureDateTime: 2018-11-10T14:20:00

ArrivalDateTime: 2018-11-11T07:10:00

DepartureTimeZone => "GMTOffset": -5

ArrivalTimeZone => "GMTOffset": 3

请指导我如何将上述日期/时间转换为巴基斯坦标准日期/时间,因为我不知道这些GMTOffset值如何帮助我获得所需的信息。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用DateTimeDateTimeZone设置UTC和本地timezone,这将自动将UTC转换为您的本地时间:

$utc = "2018-11-10T14:20:00";
$dt = new DateTime($utc);
$tz = new DateTimeZone('Asia/Karachi'); // or whatever zone you're after

$dt->setTimezone($tz);
echo $dt->format('d-m-Y H:i:s');

输出:10-11-2018 19:20:00