站长资讯网
最全最丰富的资讯网站

php 怎么修改时差

php修改时差的解决办法:1、通过“date_default_timezone_set('Asia/Shanghai');”消除时间差;2、通过“gmdate("Y-m-d H:i:s", mktime() + $timeoffset * 3600);”格式化时间。

php 怎么修改时差

php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用

本教程操作环境: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视频教程》

赞(0)
分享到: 更多 (0)