Home  >  Article  >  php教程  >  php计算剩余时间的自定义函数

php计算剩余时间的自定义函数

WBOY
WBOYOriginal
2016-06-08 17:22:561661browse

剩余时间是指一篇文章什么时候发布到现在有几分钟或几天了,这个在很多博客论坛都以看到文章1天以前发布的,下面我介绍两实例

<script>ec(2);</script>

把两个日期格式的字符串转化成unix时间戳,然后相减获得时间戳差。最后判断剩余时间,生成类似(2小时30分钟20秒前发布)这样的时间格式

 代码如下 复制代码

public function gettime($time_s,$time_n){
$time_s = strtotime($time_s);
$time_n = strtotime($time_n);
$strtime = '';
$time = $time_n-$time_s;
if($time >= 86400){
return $strtime = date('Y-m-d H:i:s',$time_s);
}
if($time >= 3600){
$strtime .= intval($time/3600).'小时';
$time = $time % 3600;
}else{
$strtime .= '';
}
if($time >= 60){
$strtime .= intval($time/60).'分钟';
$time = $time % 60;
}else{
$strtime .= '';
}
if($time > 0){
$strtime .= intval($time).'秒前';
}else{
$strtime = "时间错误";
}
return $strtime;
}

首先判断想减之后的值是否大于一天的秒数86400秒,如果大于的话就返回原来的数据库查询出来的时间

然后判断是否在1小时到一天之内,也就是3600秒-86400秒,如果是之内的话就返回X小时。得到结果后还需使用取余数的方法去除小时部分的时间,使用 %取余

然后判断是否在1分钟到一小时之内,也就是60秒-3600秒,如果是之内的话就返回X分钟。得到结果后还需使用取余数的方法去除分钟部分的时间,使用 %取余

最后判断是否在1分钟之内,也就是0秒-60秒,如果是之内的话就返回X分秒

注意:上面得出的结果都是使用.=连接的。这样最后才得到一个整体的时间。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn