【问题标题】:Time of arrival [closed]到达时间[关闭]
【发布时间】:2014-06-19 08:02:41
【问题描述】:
New-York: GMT - 5
Chicago: GMT - 6

Time of departure: 07:00 (New-York time); travel time: 02:48.

我怎么知道我什么时候会在芝加哥? (芝加哥时间)

很抱歉,我无法做出决定。谢谢。

【问题讨论】:

  • 出发时间+旅行时间+TZ差
  • 你也存储日期吗?因为仅仅通过查看一个时区的时间可能无法给出另一个时区的实际时间
  • 请养成使用标题的习惯,这些标题可以为问题的内容提供一些线索:“如何在 MySQL 中添加日期时间?”可能会更好。
  • 我知道问题的标签是PHP,但这里有实际的代码问题吗?如果您尝试在某些代码中执行此操作,则应将其包含在您的问题中。
  • 这个问题似乎跑题了,因为它与编程无关。

标签: php time gmt


【解决方案1】:

您将使用DateTime()DateInterval()DateTimeZone() 的组合:

$flight = new DateTime('07:00', new DateTimeZone('America/New_York'));
$flight->add(new DateInterval('PT2H48M'));
$flight->setTimeZone(new DateTimeZone('America/Chicago'));
echo $flight->format('h:iA');
  1. 创建一个DateTime() 对象,表示纽约时区的出发时间
  2. 增加 2 小时 48 分钟的飞行时间
  3. 将时区更改为芝加哥的时区
  4. 打印到达时间

Demo

【讨论】:

    【解决方案2】:
    Time of Arrival (chicago TIme) = Time of departure(New-York time) + travel time: 02:48 + (New-York: GMT + Chicago: GMT)(in hours)
    

    【讨论】:

      猜你喜欢
      • 2020-03-28
      • 1970-01-01
      • 2015-09-09
      • 2016-07-08
      • 1970-01-01
      • 1970-01-01
      • 2014-09-18
      • 1970-01-01
      • 2022-11-01
      相关资源
      最近更新 更多