码迷,mamicode.com
首页 > Web开发 > 详细

PHP 时间 date,strtotime ,time计算1970开始的第几天

时间:2016-04-14 13:46:26      阅读:500      评论:0      收藏:0      [点我收藏+]

标签:

首先,需要看你的php时区配置参数

方式1:更改php配置文件,然后从其fast-cgi或者php调用的地方;

方式2:date_default_timezone_set(‘PRC‘);

 

date函数用于日期函数的获取,这里需要注意的,date得到的我们可以理解为概念时间,跟地区有关系。如北京时间和伦敦时间同一个时刻对应不同的时间有8小时的时差,北京时间早8小时。

time和strtotime得到的是物理时间,不存在和地区的联系,全球统一。

在项目有需要计算1970开始的第几天,这里就出现了问题。用时间秒去算的时候。

北京时间2016-01-14 4:00:00和2016-01-13 13:00:00得到同一个时间。

所以用strtotime转换到时间戳是内部有减去地区时间差的操作。

// 1970年1月1日至今的天数, 生成courseVideoGUID用, 截取16位
$currentTimeStamp = time();
p($currentTimeStamp);
$currentTimeStamp = ($currentTimeStamp - ($currentTimeStamp % 86400)) / 86400;
$currentTimeStamp = ($currentTimeStamp & 0xFFFF);
p($currentTimeStamp);

// 1970年1月1日至今的天数, 生成courseVideoGUID用, 截取16位
$currentTimeStamp = strtotime(date(‘Y-m-d H:i:s‘));
p($currentTimeStamp);
$currentTimeStamp = ($currentTimeStamp - ($currentTimeStamp % 86400)) / 86400;
$currentTimeStamp = ($currentTimeStamp & 0xFFFF);
p($currentTimeStamp);

// 1970年1月1日至今的天数, 生成courseVideoGUID用, 截取16位
$currentTimeStamp = strtotime(‘2016-04-14 07:00:00‘);
p($currentTimeStamp);
$currentTimeStamp = ($currentTimeStamp - ($currentTimeStamp % 86400)) / 86400;
$currentTimeStamp = ($currentTimeStamp & 0xFFFF);
p($currentTimeStamp);

PHP 时间 date,strtotime ,time计算1970开始的第几天

标签:

原文地址:http://www.cnblogs.com/swing07/p/5390481.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!