本教程操作环境:Windows7系统、PHP8.1版、Dell G3电脑。
php 怎么修改时差?
PHP获得当前时间的方法
使用函式 date() 实现
<?php
date_default_timezone_set('Asia/Shanghai');//此句用于消除时间差
echo $nowtime=date("Y-n-j H:i:s");
?>
登录后复制
出现时差的解决办法
可以使用如下代码:
<?php
$timeoffset = 8;
echo gmdate("Y-m-d H:i:s", mktime() + $timeoffset * 3600);
//gmdate()函数返回的是GMT(格林威治)时间,$timeoffset是各地的时差。8是北京时间和GMT的时差。
?>
登录后复制
还有~从php5.1.0开始,php.ini里加入了date.timezone这个选项,默认情况下是关闭的
也就是显示的时间(无论用什么php命令)都是格林威治标准时间
和我们的时间(北京时间)差了正好8个小时,有以下3中方法可以恢复正常的时间。
1,最简单的方法就是不要用php5.1以上的版本
2,如果一定要用,而且不能修改php.ini,则需要在关于时间的初始化的语句的
上面加上 date_default_timezone_set (XXX);
3,一劳永逸,仅限能修改php.ini。打开php.ini查找date.timezone 去掉前面的分号
= 后面加PRC,重启http服务(如apache2或iis等)即可
关于2那个括号中的XXX可以去php官方查,地址:http://www.php.net/manual/en/timezones.php
以上就是php 怎么修改时差的详细内容,更多请关注编程网其它相关文章!