为什么strotime在php中返回负值?
题
我正在使用strtotime将日期转换为unixtime戳。 年,日期和日的编码值不同,我正在使用下面的代码来生成时间戳。 通用标签
上面的代码为我打印:-27648000。如果年份高于1970,则会打印出正面结果。如果有人可以帮助我,我仍在学习时间戳。主要目的是将日期转换为Unix时间戳。
问题是为什么它给出否定的结果,我编码不好吗??我也尝试过mktime,但是结果还是一样。
谢谢, 坦美(Tanmay)
其他提示
这是预期的行为。
strtotime
返回UNIX时间戳,即自1970年1月1日以来的秒数(不考虑considering秒)。对于之前的日期,它将返回负数。
Unix时间从1970年1月1日午夜开始。因此,在此之前的任何日期都会导致返回负值。
这是Unix时间戳。Unix / PHP的基准日期是1970年1月1日美国标准时间00:00,时间戳以秒为单位。如果为负,则是基准日期之前的秒数;如果为正数,则为秒数
我还在学习时间戳,
unix timestamp
-> http://en.wikipedia.org/wiki/Unix_time定义为自午夜多点协调世界时(UTC)开始经过的秒数 1970年1月1日
http://en.wikipedia.org/wiki/Unix_time
Unix时间,或POSIX时间,是一种用于描述时间点的系统,时间点定义为自1970年1月1日午夜多点协调世界时(UTC)起经过的秒数,不计算leap秒。它不仅在类Unix操作系统中得到广泛使用,而且在许多其他计算系统和文件格式中也得到广泛使用。它既不是时间的线性表示,也不是UTC的真实表示(尽管经常会误以为两者),因为它表示的时间是UTC,但不表示标准UTC seconds秒(例如1998年12月31日23:59:60)...
1970年1月1日之前的时间是负值,因为它们发生在UTC开始之前。