很多站长朋友们都不太清楚php校准时间,今天小编就来给大家整理php校准时间,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php5时间修改问题 2、 php时间段验证 3、 php怎么设置时间与系统时间一致? 4、 求PHP准确北京时间 5、 php当地时间问题 php5时间修改问题解决办法:
1.在PHP.ini文件中修改设置。
[Date]
; Defines the default timezone used by the date functions
date.timezone = Asia/Shanghai
这里真是。。。可以设置Shanghai,Chongqin,Hong_Kong,TaiBei...等等,可就是没有找到Beijing,不知道是什么原因。
2.在PHP程序中运行时设置。
<?php
if(date_default_timezone_get() != "Asia/Shanghai") date_default_timezone_set("Asia/Shanghai");
?>
注意:用"date_default_timezone_get"获得的时间设置中有一个1,也不太清楚是杂回事呢。
3.在使用时间时自己多加8*3600秒也是行的。
<?php
echo date("Y-m-d H:i:s",time()+8*3600);
?>
个人推荐使用第二种方法,如果不能不使用"date_default_timezone_get"或"date_default_timezone_set"时,再使用第三种方法。当然了,如果是自己的服务器,也可以通过设置PHP来设置也是行的。
php时间段验证可以这么写:
<?php
$date = date("Y-m-d H", time());
$start= strtotime($date); //开始的时间
$end = $start + 3600; //结束的时间
$uid = $_SESSION['uid']; //获取用户的id
//查询是否抽奖过,uid为当前用户,时间在一个小时的时间段内
$sql = "SELECT * FROM your_table WHERE uid=$uid AND time>=".$start." AND time<=".$end;
//TODO::根据sql查询是否在时间段内抽奖过,如果抽奖了,返回false,没抽奖则显示抽奖结果即可
?>
php怎么设置时间与系统时间一致?你修正只是php这样级别的时区,所以网页显示出来的时间跟你浏览器所在电脑时间是一致的(修正好了)。
但错误日志的运行一般是apache或者php-cgi,它们是直接调用操作系统的时间和时区的,所以写出来的日志时间有时差。依照你的描述,估计你用的是linux,试一下修正一下linux的时区一下就可以了。命令如下:
rm -f /etc/localtime
ln -s /usr/share/zoneinfo/asia/shanghai /etc/localtime
求PHP准确北京时间在服务器上设置好时间(百度北京时间然后对准设置), 然后用PHP取系统时间就好了,服务器设置好后基本没什么误差的,
如果需要更精准,可以通过网络API获取,再通过请求头计算请求时间,计算后就可以得到精准时间了,但是我觉得还是第一个方法好
php当地时间问题在php5以及起以上的版本,默认情况下的时间会与本地时间出现时差,时间函数的输出结果总是相差8个小时。
对于东八区,可用的有Asia/Chongqing、Asia/Chungking、Asia/Hongkong、Asia/Shanghai、Asia/Taipei、PRC、Etc/GMT+8等,任选一个就可以了。
解决方法如下:
方法1、在代码中增加如下命令:
<?php
date_default_timezone_set('Asia/Shanghai');
?>
方法2、配置php.ini文件,设置如下:
<?php
date.timezone=PRC; //中国:PRC如果没有此项在任意位置添加即可,添加后别忘记重启APACHE服务器
?>
关于php校准时间的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。