关于PHPdate()函数的一个有关问题
程序员文章站
2024-04-05 17:44:06
...
关于PHPdate()函数的一个问题
今天在查看php手册的时候 发现date函数可以直接传参数Z,php手册上解释说:date('Z')是时差偏移量的秒数。UTC 西边的时区偏移量总是负的,UTC 东边的时区偏移量总是正的。但是我执行以下代码:
按道理说是差了8个小时,date('Z')/3600应该输出8 为什么输出为0呢?
------解决方案--------------------
输出是 8
如果你的时区没有修改的话,那么就应该是 0
echo date('Z')/3600;
echo gmdate('Z')/3600;
如果两者输出结果一样,则表示你的时间是格林威治时间
------解决方案--------------------
因为你没有设定本地时区,如果你设定了php.ini中的date.timezone或者用date_default_timezone_set()
规定了本地时区,结果就是8了。
------解决方案--------------------
你用的是默认的格林时间。因此 echo date('Z') 偏移返回0
今天在查看php手册的时候 发现date函数可以直接传参数Z,php手册上解释说:date('Z')是时差偏移量的秒数。UTC 西边的时区偏移量总是负的,UTC 东边的时区偏移量总是正的。但是我执行以下代码:
- PHP code
按道理说是差了8个小时,date('Z')/3600应该输出8 为什么输出为0呢?
------解决方案--------------------
输出是 8
如果你的时区没有修改的话,那么就应该是 0
echo date('Z')/3600;
echo gmdate('Z')/3600;
如果两者输出结果一样,则表示你的时间是格林威治时间
------解决方案--------------------
因为你没有设定本地时区,如果你设定了php.ini中的date.timezone或者用date_default_timezone_set()
规定了本地时区,结果就是8了。
------解决方案--------------------
你用的是默认的格林时间。因此 echo date('Z') 偏移返回0
相关文章
相关视频