页面代码:服务器在美国
但取到的结果为:
now_day =thursday
now_date =2014/03/06
1394116011
prc
总是少一天。以前没有这种情况的,要怎么搞啊。
回复讨论(解决方案) http://bbs.csdn.net/topics/350031391
谢谢楼上,不过找不到解决办法。
声明一下:没有国外的服务器,无法实地测试
但原理是不变的
假定服务器的时间是准确的
则有 $t = 1394116011; //time() 的结果for($i=-12; $i<=12; $i++) { date_default_timezone_set(sprintf(etc/gmt%s%d, $i<0?'':'+', $i)); echo date_default_timezone_get(), date(' y-m-d h:i:s', $t), php_eol;}
etc/gmt-12 2014-03-07 02:26:51etc/gmt-11 2014-03-07 01:26:51etc/gmt-10 2014-03-07 00:26:51etc/gmt-9 2014-03-06 23:26:51etc/gmt-8 2014-03-06 22:26:51etc/gmt-7 2014-03-06 21:26:51etc/gmt-6 2014-03-06 20:26:51etc/gmt-5 2014-03-06 19:26:51etc/gmt-4 2014-03-06 18:26:51etc/gmt-3 2014-03-06 17:26:51etc/gmt-2 2014-03-06 16:26:51etc/gmt-1 2014-03-06 15:26:51etc/gmt+0 2014-03-06 14:26:51etc/gmt+1 2014-03-06 13:26:51etc/gmt+2 2014-03-06 12:26:51etc/gmt+3 2014-03-06 11:26:51etc/gmt+4 2014-03-06 10:26:51etc/gmt+5 2014-03-06 09:26:51etc/gmt+6 2014-03-06 08:26:51etc/gmt+7 2014-03-06 07:26:51etc/gmt+8 2014-03-06 06:26:51etc/gmt+9 2014-03-06 05:26:51etc/gmt+10 2014-03-06 04:26:51etc/gmt+11 2014-03-06 03:26:51etc/gmt+12 2014-03-06 02:26:51
可以看到,除非你把时区设在太平洋上,2014-03-06 这个日期都不会变
于是可以推论,你的服务器上的时间不准确
这一点你可以在按服务器默认时区输出一个日期时间后,手工推演一下
后来问了供应商,他们说应该是服务器上的时间有问题。后来就自动好了,估计是他们自己调正确了。