首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

为什么date得到时间跟机器时间不一样?解决思路

2012-04-07 
为什么date得到时间跟机器时间不一样?我想用date()得到当前的时间跟数据库里面某个datetime类型的值进行比

为什么date得到时间跟机器时间不一样?
我想用date()得到当前的时间跟数据库里面某个datetime类型的值进行比较。我用echo date('Y-m-d h:m:s')得到是2012-04-04 07:04:20
但是现在我的机器时间是2012-04-04 19:47:20,不知道为什么不一样?
我怎么比较两个时间,是不是需要转换成秒才能比较呢?

我查看php.ini中时间有关的设置如下:
; Default timestamp format.
ibase.timestampformat = "%Y-%m-%d %H:%M:%S"

; Default date format.
ibase.dateformat = "%Y-%m-%d"

; Default time format.
ibase.timeformat = "%H:%M:%S"

[解决办法]
楼主用的是美国服务器?时区不一样吧
[解决办法]
时区问题,修改php.ini date.timezone = "Asia/Shanghai"
[解决办法]
除了设置时区,差8小时 分钟可不是m哦
echo date('Y-m-d h:m:s')

echo date('Y-m-d H:i:s')

翻手册去
[解决办法]
注意 H h的区别

还有 m i 手册是最好的
[解决办法]

PHP code
date_default_timezone_set('PRC');
[解决办法]
抱歉,没仔细看马马虎虎就回答了。#4的答案才是正确的
至于比较,在mysql 里 datetime类型是可以用比较字符串的方式比较的
例如 where '2012-3-3 13:34:34' > `time`
取出所有2012-3-3 13:34:34之前的列

热点排行