php论坛中常用的两个时间差(多少分钟前,多少小时前,多少天前)

<?php
@ini_set('date.timezone', 'Asia/Shanghai');
@ini_set('display_errors', 1);
header('Content-Type:text/html;charset=utf-8');
class Time
{
    public static function times($btime)
    {
        $result = '';
        $time =time() - $btime ;
        if($time < 60)
        {
            $result = $time.'秒前';
        }
        else if($time < 1800)
        {
            $result = floor($time/60).'分钟前';
        }
        else if($time < 3600)
        {
            $result = '半小时前';
        }
        else if($time < 86400)
        {
            $result = floor($time/3600).'小时前';
        }
        else
        {
            $zt = strtotime(date('Y-m-d 00:00:00'));
            $qt = strtotime(date('Y-m-d 00:00:00',strtotime("-1 day")));
            $st = strtotime(date('Y-m-d 00:00:00',strtotime("-2 day")));
            $bt = strtotime(date('Y-m-d 00:00:00',strtotime("-7 day")));
            if( $btime < $bt)
            {
                $result = date('Y-m-d H:i:s', $btime);
            }
            else if($btime < $st)
            {
                $result = floor($time/86400).'天前';
            }
            else if($btime < $qt)
            {
                $result = "前天".date('H:i', $btime);
            }
            else
            {
                $result = '昨天'.date('H:i', $btime);
            }
        }
        return $result;
    }
}
//测试
$str='2013-09-25 00:13:05';
echo Time::times(strtotime($str));

你可能感兴趣的:(php论坛中常用的两个时间差(多少分钟前,多少小时前,多少天前))