PHP CodeBase:将时间显示为"刚刚""n分钟/小时前"的方法详解


Posted in PHP onJune 06, 2013

在很多场合为了显示出信息的及时性,一般会将时间显示成“刚刚”,“5分钟前”,“3小时前”等,而不是直接将时间打印出来。比如微博,SNS类应用就最长用到这个功能。而一般存储在数据库中的时间格式为 Unix时间戳,所以这里记录一个将 Unix时间戳 转化为时间轴显示的PHP函数。
函数比较简单,直接看代码就很好懂了。

<?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时间戳
PHP 相关文章推荐
落伍首发 php+mysql 采用ajax技术的 省 市 地 3级联动无刷新菜单 源码
Dec 16 PHP
PHP连接和操作MySQL数据库基础教程
Sep 29 PHP
Laravel 4 初级教程之视图、命名空间、路由
Oct 30 PHP
php判断类是否存在函数class_exists用法分析
Nov 14 PHP
thinkphp配置连接数据库技巧
Dec 02 PHP
php自定文件保存session的方法
Dec 10 PHP
php实现高效获取图片尺寸的方法
Dec 12 PHP
php取得字符串首字母的方法
Mar 25 PHP
php版微信公众平台入门教程之开发者认证的方法
Sep 26 PHP
php的4种常用运行方式详解
Dec 22 PHP
PHP实现二维数组去重功能示例
Jan 12 PHP
PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】
Dec 21 PHP
深入PHP empty(),isset(),is_null()的实例测试详解
Jun 06 #PHP
解析PHP多种序列化与反序列化的方法
Jun 06 #PHP
一个简洁的PHP可逆加密函数(分享)
Jun 06 #PHP
深入PHP获取随机数字和字母的方法详解
Jun 06 #PHP
解析如何屏蔽php中的phpinfo()函数
Jun 06 #PHP
深入PHP中慎用双等于(==)的详解
Jun 06 #PHP
解析PHP中如何将数组变量写入文件
Jun 06 #PHP
You might like
PHP+.htaccess实现全站静态HTML文件GZIP压缩传输(一)
2007/02/15 PHP
带密匙的php加密解密示例分享
2014/01/29 PHP
19个超实用的PHP代码片段
2014/03/14 PHP
PHP递归遍历指定文件夹内的文件实现方法
2016/11/15 PHP
php利用array_search与array_column实现二维数组查找
2019/07/08 PHP
PHP dirname功能及原理实例解析
2020/10/28 PHP
Javascript无阻塞加载具体方式
2013/06/28 Javascript
Javascript基础教程之数据类型 (字符串 String)
2015/01/18 Javascript
AngularJS入门教程之与服务器(Ajax)交互操作示例【附完整demo源码下载】
2016/11/02 Javascript
EasyUI修改DateBox和DateTimeBox的默认日期格式示例
2017/01/18 Javascript
bootstrap table之通用方法( 时间控件,导出,动态下拉框, 表单验证 ,选中与获取信息)代码分享
2017/01/24 Javascript
javascript数据结构之串的概念与用法分析
2017/04/12 Javascript
JavaScript如何对图片进行黑白化
2018/04/10 Javascript
vue 2.5.1 源码学习 之Vue.extend 和 data的合并策略
2019/06/04 Javascript
JS简易计算器实例讲解
2020/06/30 Javascript
[41:54]2018DOTA2亚洲邀请赛 4.1 小组赛A组加赛 TNC vs Liquid
2018/04/03 DOTA
python中正则表达式的使用详解
2014/10/17 Python
利用python代码写的12306订票代码
2015/12/20 Python
python3使用flask编写注册post接口的方法
2018/12/28 Python
Django框架 查询Extra功能实现解析
2019/09/04 Python
python Event事件、进程池与线程池、协程解析
2019/10/25 Python
python3.x 生成3维随机数组实例
2019/11/28 Python
tensorflow 实现自定义梯度反向传播代码
2020/02/10 Python
django xadmin 管理器常用显示设置方式
2020/03/11 Python
jupyter note 实现将数据保存为word
2020/04/14 Python
使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示
2020/05/16 Python
银行见习期自我鉴定
2014/01/29 职场文书
《识字五》教学反思
2014/03/01 职场文书
颐和园导游词400字
2015/01/30 职场文书
公司董事任命书
2015/09/21 职场文书
心理学培训心得体会
2016/01/22 职场文书
nginx搭建图片服务器的过程详解(root和alias的区别)
2021/03/31 Servers
pytorch MSELoss计算平均的实现方法
2021/05/12 Python
如何使用Tkinter进行窗口的管理与设置
2021/06/30 Python
Java版 单机五子棋
2022/05/04 Java/Android
java实现自定义时钟并实现走时功能
2022/06/21 Java/Android