项目中碰到问题,做个记录。
在linux上有个测试环境,在windows上有个本地环境,结果有个时间戳比较,在测试环境是好的,本地环境是不生效的。
问题代码如下:
if(strtotime('2200-01-01') > strtotime(DATETIME)){
echo "成立";
}
问题出在strtotime上。
后经过查找,最终得出原因,原来strtotime中有个注意事项:
注意: 有效的时间戳通常从 Fri, 13 Dec 1901 20:45:54 GMT 到 Tue, 19 Jan 2038 03:14:07 GMT(对应于 32 位有符号整数的最小值和最大值)。不是所有的平台都支持负的时间戳,那么日记范围就被限制为不能早于 Unix 纪元。这意味着在 1970 年 1 月 1 日之前的日期将不能用在 Windows,一些 Linux 版本,以及几个其它的操作系统中。不过 PHP 5.1.0 及更新的版本克服了此限制。