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 相关文章推荐
在PHP3中实现SESSION的功能(一)
Oct 09 PHP
PHP实现域名whois查询的代码(数据源万网、新网)
Feb 22 PHP
php程序的国际化实现方法(利用gettext)
Aug 14 PHP
PHP学习笔记之字符串编码的转换和判断
May 22 PHP
php将csv文件导入到mysql数据库的方法
Dec 24 PHP
PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
Feb 23 PHP
php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
Nov 16 PHP
php读取和保存base64编码的图片内容
Apr 22 PHP
PHP文件系统管理(实例讲解)
Sep 19 PHP
laravel实现按月或天或小时统计mysql数据的方法
Oct 09 PHP
PHP读取文件,解决中文乱码UTF-8的方法分析
Jan 22 PHP
PHP控制循环操作的时间
Apr 01 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
PHP4在WinXP下IIS和Apache2服务器上的安装实例
2006/10/09 PHP
解决163/sohu/sina不能够收到PHP MAIL函数发出邮件的问题
2009/03/13 PHP
深入理解PHP变量的值类型和引用类型
2015/10/21 PHP
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
2015/12/01 PHP
yii2超好用的日期组件和时间组件
2016/05/05 PHP
PHP中session跨子域的三种实现方法
2016/07/25 PHP
PHP在innodb引擎下快速代建全文搜索功能简明教程【基于xunsearch】
2016/10/14 PHP
php微信开发之百度天气预报
2016/11/18 PHP
用prototype实现的简单小巧的多级联动菜单
2007/03/24 Javascript
CCPry JS类库 代码
2009/10/30 Javascript
Jquery选择器中使用变量实现动态选择例子
2014/07/25 Javascript
javascript实现在网页中运行本地程序的方法
2016/02/03 Javascript
jQuery改变form表单的action,并进行提交的实现代码
2016/05/25 Javascript
JS中input表单隐藏域及其使用方法
2017/02/13 Javascript
详解nodeJS之二进制buffer对象
2017/06/03 NodeJs
Vue2.0利用vue-resource上传文件到七牛的实例代码
2017/07/28 Javascript
vue使用better-scroll实现下拉刷新、上拉加载
2018/11/23 Javascript
基于react项目打包css引用路径错误解决方案
2020/10/28 Javascript
微信小程序实现页面监听自定义组件的触发事件
2020/11/01 Javascript
[01:03:03]VP vs Mineski 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
Python中字符串与编码示例代码
2019/05/20 Python
Python Django2.0集成Celery4.1教程
2019/11/19 Python
使用pyplot.matshow()函数添加绘图标题
2020/06/16 Python
Matplotlib 折线图plot()所有用法详解
2020/07/28 Python
深入了解Python装饰器的高级用法
2020/08/13 Python
html5+css3气泡组件的实现
2014/11/21 HTML / CSS
Boden澳大利亚官网:英国在线服装公司
2018/08/05 全球购物
商务英语专业应届毕业生求职信
2013/10/28 职场文书
运动会开幕式解说词
2014/02/05 职场文书
销售员岗位职责
2014/06/09 职场文书
小学生志愿者活动方案
2014/08/23 职场文书
授权收款委托书
2014/09/23 职场文书
2015年小学生新年寄语
2014/12/08 职场文书
学习党史心得体会2016
2016/01/23 职场文书
Java比较两个对象中全部属性值是否相等的方法
2021/08/07 Java/Android
vue使用element-ui按需引入
2022/05/20 Vue.js