2011-10-01 57 views
0

首先,我想告诉我的服务器时间设定:其+3欧洲/伊斯坦布尔 和PHP我使用日期时间推移1小时了采用与本地时间设置UNIX时间戳时

date_default_timezone_set('Europe/Istanbul'); 

我使用日期时间键入我的MySQL表,当我插入行时,它的写入像2011-10-01 15:16:09其正确没有问题,但在PHP方面当我查询和回显日期时间与 echo strftime("%d %b %Y, %a %H:%M",strtotime(date("m/d/Y H:i",$data['UNIX_TIMESTAMP(date)']))); 我得到时间一小时像16:16:09

我不明白如何弄清楚。任何想法 ?

编辑: 将我给的日期到MySQL行的时候,它不使用内部最新信息像CURRENT_TIMESTAMP

+0

'$ data ['UNIX_TIMESTAMP(date)']'是什么值? '1317471369'? – salathe

+0

是@salathe它喜欢1317471369 Mysql将datetime转换为时间戳格式,所以我在php日期函数中使用它来创建日期和时间。但不知怎的,它给了一个小时向前 – Murat

+0

但它是**像** 1317471369还是实际上是1317471369 ? – salathe

回答

0

的问题是几乎可以肯定,由于夏令时。如果代码的一部分指定了+3,那么已经针对夏令时进行了更正。如果代码的其他部分无法将日期识别为夏令时的正确时间,则会增加一个小时。

我知道这不是一个好的答案,但我似乎还没有能够发表评论呢。