把下面实例代码另存为 time.php= 60 && $minute < (60 * 24)) { //分钟大于等于60分钟且小于一天的分钟数,即按小时显示
$hour = floor($minute / 60); //得到小时数
} elseif ($minute >= (60 * 24) && $minute < (60 * 24 * 30)) { //如果分钟数大于等于一天的分钟数,且小于一月的分钟数,则按天显示
$day = floor($minute / ( 60 * 24)); //得到天数
} elseif ($minute >= (60 * 24 * 30) && $minute < (60 * 24 * 365)) { //如果分钟数大于等于一月且小于一年的分钟数,则按月显示
$month = floor($minute / (60 * 24 * 30)); //得到月数
} elseif ($minute >= (60 * 24 * 365)) { //如果分钟数大于等于一年的分钟数,则按年显示
$year = floor($minute / (60 * 24 * 365)); //得到年数
}
break;
case 2:
//$date为字符串格式 2013-06-06 19:16:12
$date = strtotime($date);
$second = time() - $date;
$minute = floor($second / 60) ? floor($second / 60) : 1; //得到分钟数
if ($minute >= 60 && $minute < (60 * 24)) { //分钟大于等于60分钟且小于一天的分钟数,即按小时显示
$hour = floor($minute / 60); //得到小时数
} elseif ($minute >= (60 * 24) && $minute < (60 * 24 * 30)) { //如果分钟数大于等于一天的分钟数,且小于一月的分钟数,则按天显示
$day = floor($minute / ( 60 * 24)); //得到天数
} elseif ($minute >= (60 * 24 * 30) && $minute < (60 * 24 * 365)) { //如果分钟数大于等于一月且小于一年的分钟数,则按月显示
$month = floor($minute / (60 * 24 * 30)); //得到月数
} elseif ($minute >= (60 * 24 * 365)) { //如果分钟数大于等于一年的分钟数,则按年显示
$year = floor($minute / (60 * 24 * 365)); //得到年数
}
break;
default:
break;
}
if (isset($year)) {
return $year . '年前发布';
} elseif (isset($month)) {
return $month . '月前发布';
} elseif (isset($day)) {
return $day . '天前发布';
} elseif (isset($hour)) {
return $hour . '小时前发布';
} elseif (isset($minute)) {
return $minute . '分钟前发布';
}
}
//测试代码:
//$time1 = time() - 60 * 60 * 23;
//echo formatTime($time1, 1); //结果:23小时前
//echo "";
//$time2 = '2013-11-11 19:16:12'; //结果:29天前
//echo formatTime($time2, 2);
?>
在程序根目录的index.php
加入
include PHPCMS_PATH.'/time.php';
在显示时间的位置加入
时间调用代码{formatTime($r[inputtime],1)}
另外加两个代码function formatTime($date) {
$str = '';
$timer = strtotime($date);
$diff = $_SERVER['REQUEST_TIME'] - $timer;
$day = floor($diff / 86400);
$free = $diff % 86400;
if($day > 0) {
return $day."天前";
}else{
if($free>0){
$hour = floor($free / 3600);
$free = $free % 3600;
if($hour>0){
return $hour."小时前";
}else{
if($free>0){
$min = floor($free / 60);
$free = $free % 60;
if($min>0){
return $min."分钟前";
}else{
if($free>0){
return $free."秒前";
}else{
return '刚刚';
}
}
}else{
return '刚刚';
}
}
}else{
return '刚刚';
}
}
}/**
* 发布时间展示函数
* @return 返回发布时间
*/
function show_time($time) {
$rtime = date("m-d H:i",$time);
$htime = date("H:i",$time);
$time = time() - $time;
if ($time < 60) {
$str = $time.'秒前';
} elseif ($time < 3600) {
$min = floor($time/60);
$str = $min.'分钟前';
} elseif ($time < 86400) {
$h = floor($time/3600);
$str = $h.'小时前 '.$htime;
} elseif ($time < 172800) {
$d = floor($time/86400);
if($d==1)
$str = '昨天 '.$htime;
else
$str = '前天 '.$htime;
} else {
$str = $rtime;
}
return $str;
}