date()返回错误的一天,虽然时间戳是正确的! [英] date() returning wrong day although the timestamp is correct!

查看:265
本文介绍了date()返回错误的一天,虽然时间戳是正确的!的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



代码:

  $ numDays = 8; 
$ date = strtotime('2010-11-06');
($ i = 1; $ i <= $ numDays; $ i ++)
{
$ thisDay = date(D,d M Y,$ date);
print($ thisDay。'< br>');
$ date + = 86400; //添加一天时间戳
}

我的服务器上的结果(本地主机,windows ):



2010年11月06日,星期六



2010年11月7日,星期日



2010年11月8日,星期一



星期二,2010年11月9日



Wed,10 2010年11月



2010年11月11日,星期四



2010年11月12日,星期五



2010年11月13日,星期六



我的网络服务器(linux)上的结果



2010年11月06日星期六



* 2010年11月7日,星期日



2010年11月8日,星期一



2010年11月9日,星期二



2010年11月10日,星期三



2010年11月11日,星期四



2010年11月12日,星期五



请注意,Sun,2010年11月07日在远程服务器上出现两次?为什么会发生这种情况?任何人都可以解释这个行为吗?

解决方案

2010年11月7日是许多时区的DST切换日期(但不是您似乎位于的希腊)。从维基百科


从2007年开始,美国和加拿大的大部分地区从3月的第二个星期日到11月的第一个星期日,观察到了DST,几乎是今年的三分之二。


在希腊,似乎是 10月31 。你在你的机器上设置了哪个时区?


I have a bizzare problem with php date function.

code:

$numDays = 8;
$date = strtotime('2010-11-06');
for ($i=1; $i<=$numDays; $i++)
{
    $thisDay = date("D, d M Y", $date);
    print ($thisDay.'<br>');
    $date+=86400; // add one day to timestamp
}

result on my server (local host, windows):

Sat, 06 Nov 2010

Sun, 07 Nov 2010

Mon, 08 Nov 2010

Tue, 09 Nov 2010

Wed, 10 Nov 2010

Thu, 11 Nov 2010

Fri, 12 Nov 2010

Sat, 13 Nov 2010

Result on my web server (linux)

Sat, 06 Nov 2010

*Sun, 07 Nov 2010

Sun, 07 Nov 2010*

Mon, 08 Nov 2010

Tue, 09 Nov 2010

Wed, 10 Nov 2010

Thu, 11 Nov 2010

Fri, 12 Nov 2010

Notice how Sun, 07 Nov 2010 appears twice on the remote server?? Why is this happening? can anyone explain this Behavior?

解决方案

November 7, 2010 is the DST switch date in many time zones (but not Greece where you seem to be located). From Wikipedia:

Starting in 2007, most of the United States and Canada observe DST from the second Sunday in March to the first Sunday in November, almost two-thirds of the year.

In Greece, it seems to be October 31. Which time zone do you have you set on your machine?

这篇关于date()返回错误的一天,虽然时间戳是正确的!的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆