栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

PHP time()是否返回GMT / UTC时间戳?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

PHP time()是否返回GMT / UTC时间戳?

time
返回UNIX时间戳,该时间戳与时区无关。由于UNIX时间戳表示自1970年 UTC 以来的秒数,您可以说它是UTC,但实际上没有时区。


实际上,UNIX时间戳在任何给定时间在全世界范围内都是相同的值。在撰写本文时,它

1296096875
在东京,伦敦和纽约。要将其转换为“人类可读”的时间,您需要指定要显示的时区。
1296096875
在东京是
2011-01-2711:54:35
,在伦敦是
2011-01-27 02:54:35
在纽约
2011-01-26 21:54:35

实际上,在处理时间时,您通常要处理(混合)这些概念:

  • 绝对时间点,我想称为 人类历史 中的时间
  • 当地时间,我想称为 墙上时钟时间
  • 任何形式的完整时间戳,可以表达 人类历史上 的绝对 观点
  • 当地壁钟时间不完整

像这样可视化时间:

-------+-------------------+-------+--------+----------------+------>       |        |       |        |     |Dinosaurs died        Jesus born  Y2K  Mars colonised       ???

(不按比例)

这条线上的 绝对点 可以表示为:

  • 1296096875
  • 2011年1月27日02:54:35欧洲/伦敦

两种格式都以不同的符号表示相同的绝对时间点。前者是一个简单的计数器,大致从此处开始:

    start of UNIX epoch |-------+-------------------+------++--------+----------------+------>       |        |       |        |     |Dinosaurs died        Jesus born  Y2K  Mars colonised       ???

后者是一个复杂得多但同样有效且富有表现力的计数器,大致从此处开始:

   start of Gregorian calendar     |-------+-------------------+-------+--------+----------------+------>       |        |       |        |     |Dinosaurs died        Jesus born  Y2K  Mars colonised       ???

UNIX时间戳很简单。它们是一个计数器,它从一个特定的时间点开始,并且每秒增加1(对于秒的官方定义)。想象一下,伦敦有人在1970年1月1日午夜启动了秒表,该秒表仍在运行。这或多或少是UNIX时间戳。每个人都使用与那只秒表相同的价值。

人类可读的挂钟时间更为复杂,并且由于其在日常使用中被缩写且部分省略的事实而变得更加复杂。 02:54:35 表示 上图中
的时间轴上几乎没有任何内容。 2011年1月27日02:54:35 已经非常具体了,但仍可能意味着这条线上的各种不同点。
“当时钟在2011年1月27日 在欧洲伦敦的 02:54:35钟声响起时”,现在终于在这条线上成为明确的绝对点,因为只有一个时间点是正确的。

因此,时区是“挂钟时间”的“修饰符”,使用日历和时/分/秒表示法来表示唯一的绝对时间点是必需的。如果没有时区,则这种格式的时间戳会模棱两可,因为2011年1月27日,全球每个国家/地区的时钟在不同时间响起02:54:35。

UNIX时间戳固有地不存在此问题。


要从UNIX时间戳转换为人类可读的挂钟时间,您需要指定想要显示的时间所在的时区。要将挂钟时间转换为UNIX时间戳,您需要知道该挂钟时间所在的时区应该在每次这样的转换中每次都包含时区,或者设置要与一起使用的默认时区

date_default_timezone_set



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/506867.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号