首页 > 程序开发 > PHP > PHP时间轴函数
2014
12-06

PHP时间轴函数

我们会经常看见现在许多网站的留言或者评论的时间变得十分有趣,刚刚、3分钟前、1天前等等人性化的时间轴

代码如下:

<?php
/**
 * 时间轴函数,单位以unix时间戳计算
 * @param int $pubtime 发布时间
 */
function timeShaft($pubtime) {
    $time = time ();
    /** 如果不是同一年 */
    if (idate ( 'Y', $time ) != idate ( 'Y', $pubtime )) {
        return date ( 'Y年m月d日', $pubtime );
    }
 
    /** 以下操作同一年的日期 */
    $seconds = $time - $pubtime;
    $days = idate ( 'z', $time ) - idate ( 'z', $pubtime );
 
    /** 如果是同一天 */
    if ($days == 0) {
        /** 如果是一小时内 */
        if ($seconds < 3600) {
            /** 如果是一分钟内 */
            if ($seconds < 60) {
                if (3 > $seconds) {
                    return '刚刚';
                } else {
                    return $seconds . '秒前';
                }
            }
            return intval ( $seconds / 60 ) . '分钟前';
        }
        return idate ( 'H', $time ) - idate ( 'H', $pubtime ) . '小时前';
    }
 
    /** 如果是昨天 */
    if ($days == 1) {
        return '昨天' . date ( 'H:i', $pubtime );
    }
 
    /** 如果是前天 */
    if ($days == 2) {
        return '前天 ' . date ( 'H:i', $pubtime );
    }
 
    /** 如果是7天内 */
    if ($days < 7) {
        return $days. '天前';
    }
 
    /** 超过7天 */
    return date ( 'n月j日 H:i', $pubtime );
}
最后编辑日期:
作者:uuling
这个作者貌似有点懒,什么都没有留下。

留下一个回复

你的email不会被公开。