• 技术文章 >后端开发 >php教程

    PHP CodeBase:将时间显示为"刚刚""n分钟/小时前&_PHP

    2016-06-01 12:06:40原创339
    在很多场合为了显示出信息的及时性,一般会将时间显示成“刚刚”,“5分钟前”,“3小时前”等,而不是直接将时间打印出来。比如微博,SNS类应用就最长用到这个功能。而一般存储在数据库中的时间格式为 Unix时间戳,所以这里记录一个将 Unix时间戳 转化为时间轴显示的PHP函数。
    函数比较简单,直接看代码就很好懂了。
    复制代码 代码如下:
    date_default_timezone_set('PRC');
    $date = "1351836000";
    echo tranTime($date);
    function transfer_time($time)
    {
    $rtime = date("m-d H:i",$time);
    $htime = date("H:i",$time);
    $time = time() - $time;
    if ($time < 60)
    {
    $str = '刚刚';
    }
    elseif ($time < 60 * 60)
    {
    $min = floor($time/60);
    $str = $min.'分钟前';
    }
    elseif ($time < 60 * 60 * 24)
    {
    $h = floor($time/(60*60));
    $str = $h.'小时前 '.$htime;
    }
    elseif ($time < 60 * 60 * 24 * 3)
    {
    $d = floor($time/(60*60*24));
    if($d==1)
    $str = '昨天 '.$rtime;
    else
    $str = '前天 '.$rtime;
    }
    else
    {
    $str = $rtime;
    }
    return $str;
    }
    ?>

    注意函数transfer_time()中的参数$time必须为Unix时间戳,如果不是请先用strtotime()将其转换成Unix时间戳
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php 获取小时
    上一篇:PHP编码规范的深入探讨_PHP 下一篇:深入php 正则表达式的学习探讨_PHP
    千万级数据并发解决方案

    相关文章推荐

    • 见鬼了,真的是百思不得其解,难道是bug?该怎么处理• session,cookie共用,session丢失之有关问题,1周了• js动态添加行后,往数据库中插入数据的有关问题• PHP验证码图片不能输出,该如何解决• php与redis施用经验分享
    1/1

    PHP中文网