84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
在工作中发现一个bug:
我公司服务器的php的default timezone 和 timezone 都配置为 America/Los_Angeles;
时间戳 1457856000,
使用date()函数格式化后是2016-03-13 00:00:00;
但是为该时间戳加上3600*24-1秒后,使用date()函数格式化发现居然是2016-03-14 00:59:59;
而该日期的前一天和后一天则没有这种诡异的现象;
有人知道这是什么原因吗?
闭关修行中......
/** * 按照你说的时间,应该就是这个时区, * 但是没什么问题,是你的计算过程出现什么没有注意到的地方, 还是不同的时区的关系 */ date_default_timezone_set('Etc/GMT+8'); $timeStamp = 1457856000; var_dump(date('Y-m-d H:i:s', $timeStamp)); var_dump(date('Y-m-d H:i:s', $timeStamp + 3600*24-1));
不是很懂你的问题……初步怀疑是因为其他的计算导致的。
有个概念叫做夏令时~
不是很懂你的问题……初步怀疑是因为其他的计算导致的。
有个概念叫做夏令时~