【问题标题】:PHP shows time with 20 minute differencePHP 显示时间有 20 分钟的差异
【发布时间】:2021-12-22 20:47:36
【问题描述】:

我在 docker env 上使用 PHP 7.4.24。在 php ini 中我只指定了时区:

[Date]
date.timezone = Japan

即使您在脚本中指定时区也没关系

$date = new \DateTime('now', new DateTimeZone('Japan'));
echo $date->format('d.m.Y H:i:s');

它说: 10.11.2021 14:14:17,但现在该时区的实时时间是 10.11.2021 17:34:17 我最大的问题是时差是 20 分钟,所以我无法选择其他时区来使其正常工作。

【问题讨论】:

  • 不应该date.timezone = Japandate.timezone=Asia/Tokyo 吗?
  • 服务器时间是否正确?
  • @bassxzero, "Japan" - 是有效时区,但即使我指定 "Asia/Tokyo" - 时差仍然是 20 分钟。
  • @droopsnoot,它在 docker 容器中。它应该需要主机的时间和日期。如何查看?

标签: php datetime time timezone


【解决方案1】:

我在这个问题中找到了答案 How to make sure docker's time syncs with that of the host? 我在控制台中运行了它,它有帮助

docker run --rm --privileged alpine hwclock -s

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-31
    • 1970-01-01
    相关资源
    最近更新 更多