php修改时差的解决办法:1、通过“date_default_timezone_set('Asia/Shanghai');”消除时间差;2、通过“gmdate("Y-m-d H:i:s", mktime() $timeoffset * 3600);”格式化时间。
本教程操作环境: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视频教程》
以上是php 怎么修改时差的详细内容。更多信息请关注PHP中文网其他相关文章!