如何根据 PHP 中给定的时间戳和 GMTOffset 值计算时间戳?
Posted
技术标签:
【中文标题】如何根据 PHP 中给定的时间戳和 GMTOffset 值计算时间戳?【英文标题】:How to calculate timestamp from given timestamp and GMTOffset value in PHP? 【发布时间】:2019-01-15 14:23:30 【问题描述】:目前我正在使用 API 进行航班搜索,以显示航班详情。在 API 响应中,返回几个日期和 GMTOffset。我需要将这些转换为巴基斯坦标准时间。 API 响应如下所示:
DepartureDateTime: 2018-11-10T14:20:00
ArrivalDateTime: 2018-11-11T07:10:00
DepartureTimeZone => "GMTOffset": -5
ArrivalTimeZone => "GMTOffset": 3
请指导我如何将以上日期/时间转换为巴基斯坦标准日期/时间,因为我不知道这些 GMTOffset 值将如何帮助我得到我想要的。
谢谢!
【问题讨论】:
请edit您的问题显示the code you have so far。我们这里的大多数人都很乐意帮助你提高你的手艺,但作为短期无薪编程人员不太乐意。以minimal reproducible example 向我们展示您的工作、您期望的结果和您得到的结果,我们将帮助您解决问题。重新阅读How to Ask可能会有所帮助。 Converting between timezones in php的可能重复 【参考方案1】:您可以使用DateTime和DateTimeZone设置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
【讨论】:
以上是关于如何根据 PHP 中给定的时间戳和 GMTOffset 值计算时间戳?的主要内容,如果未能解决你的问题,请参考以下文章