相同的两行代码,
<?phpecho $ts='2013-01-01 11:11:11';echo "<br>";echo strtotime($ts);?>
2013-01-01 11:11:111357009871000
你应该分别贴出两个机器上的运行结果
重新发一下我的问题
相同的代码
<?phpecho $st=date('2013-01-01 11:11:11');echo "<br>";echo (strtotime($st) * 1000);echo "<br>";echo $ts=(strtotime($st) * 1000) - (strtotime('01-01-1970 00:00:00') * 1000);?>
2013-01-01 11:11:1113570098710001357<strong>0350</strong>71000
2013-01-01 11:11:1113570098710001357<strong>0386</strong>71000
重新发一下我的问题
相同的代码
<?phpecho $st=date('2013-01-01 11:11:11');echo "<br>";echo (strtotime($st) * 1000);echo "<br>";echo $ts=(strtotime($st) * 1000) - (strtotime('01-01-1970 00:00:00') * 1000);?>
2013-01-01 11:11:1113570098710001357035071000
2013-01-01 11:11:1113570098710001357038671000
两服务器的时区不同?
另外,为啥要乘以1000?这个date,在PHP下是秒数,js是毫秒数。
两服务器的时区不同?
另外,为啥要乘以1000?这个date,在PHP下是秒数,js是毫秒数。
时区都一样的,*1000是为了转成js的时间戳
echo date("Y-m-d H:i:s",1357009871);
echo date("Y-m-d H:i:s",1357038671);
2013-01-01 03:11:11
2013-01-01 11:11:11
差了八个小时,肯定有一个的时区设置有问题。
引用 4 楼 LuciferStar 的回复:两服务器的时区不同?
另外,为啥要乘以1000?这个date,在PHP下是秒数,js是毫秒数。
时区都一样的,*1000是为了转成js的时间戳
3600秒,不难想象
echo date("Y-m-d H:i:s",1357009871);
echo date("Y-m-d H:i:s",1357038671);
2013-01-01 03:11:11
2013-01-01 11:11:11
差了八个小时,肯定有一个的时区设置有问题。
引用 5 楼 r9000_com 的回复:引用 4 楼 LuciferStar ……
这个时区
3600秒,不难想象
是相差了3600秒,但是不知道是什么原因造成的?
echo date("Y-m-d H:i:s",1357009871);
echo date("Y-m-d H:i:s",1357038671);
2013-01-01 03:11:11
2013-01-01 11:11:11
差了八个小时,肯定有一个的时区设置有问题。
引用 5 楼 r9000_com 的回复:引用 4 楼 LuciferStar ……
要比较的应该是这两个,因为是这在两台机器上不同的结果:
1357038671000
1357035071000
已找到答案,原因是在php.ini中把时区设为Asia/Chongqing与Asia/Shanghai,这样时间会相差一小时,我把php.ini中的时区改为Asia/Shanghai,问题解决,感谢各位回答