php计算剩余时间的自定义函数
把两个日期格式的字符串转化成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分秒.
注意: 上面得出的结果都是使用.=连接的,这样最后才得到一个整体的时间.
查看更多关于php计算剩余时间的自定义函数 - php日期的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did29210