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中一个控制字符串输出的函数
Oct 09 PHP
如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
Mar 06 PHP
PHP批量生成缩略图的代码
Jul 19 PHP
PHP 引用文件技巧
Mar 02 PHP
PHP中iconv函数知识汇总
Jul 02 PHP
PHP实现的简单缓存类
Jul 29 PHP
在CentOS上搭建LAMP+vsftpd环境的简单指南
Aug 01 PHP
PHP中FTP相关函数小结
Jul 15 PHP
php 修改上传文件大小限制实例详解
Oct 23 PHP
PHP面向对象之领域模型+数据映射器实例(分析)
Jun 21 PHP
完美的php分页类
Oct 24 PHP
PHP扩展Swoole实现实时异步任务队列示例
Apr 13 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
Yii快速入门经典教程
2015/12/28 PHP
PHP设计模式之工厂模式与单例模式
2016/09/28 PHP
PHP与jquery实时显示网站在线人数实例详解
2016/12/02 PHP
javascript实现面向对象类的功能书写技巧
2010/03/07 Javascript
jQuery中Dom的基本操作小结
2014/01/23 Javascript
js 弹出新页面避免被浏览器、ad拦截的一种新方法
2014/04/30 Javascript
js读取并解析JSON类型数据的方法
2015/11/14 Javascript
微信小程序 icon组件详细及实例代码
2016/10/25 Javascript
浅谈js函数中的实例对象、类对象、局部变量(局部函数)
2016/11/20 Javascript
angular过滤器实现排序功能
2017/06/27 Javascript
JS简单实现滑动加载数据的方法示例
2017/10/18 Javascript
详解Javascript 中的 class、构造函数、工厂函数
2017/12/20 Javascript
浅谈Webpack 是如何加载模块的
2018/05/24 Javascript
JavaScript设计模式之装饰者模式定义与应用示例
2018/07/25 Javascript
JS双向链表实现与使用方法示例(增加一个previous属性实现)
2019/01/31 Javascript
vue组件数据传递、父子组件数据获取,slot,router路由功能示例
2019/03/19 Javascript
详解webpack4.x之搭建前端开发环境
2019/03/28 Javascript
layui在form表单页面通过Validform加入简单验证的方法
2019/09/06 Javascript
Js实现复选框的全选、全不选反选功能代码实例
2020/02/28 Javascript
js实现页面图片消除效果
2020/03/24 Javascript
vue中父子组件的参数传递和应用示例
2021/01/04 Vue.js
python实现字典(dict)和字符串(string)的相互转换方法
2017/03/01 Python
python 计算两个日期相差多少个月实例代码
2017/05/24 Python
Python函数参数操作详解
2018/08/03 Python
python算法与数据结构之冒泡排序实例详解
2019/06/22 Python
在OpenCV里使用Camshift算法的实现
2019/11/22 Python
Python 支持向量机分类器的实现
2020/01/15 Python
python实现梯度下降法
2020/03/24 Python
Python基于execjs运行js过程解析
2020/11/27 Python
解决CSS3的opacity属性带来的层叠顺序问题
2016/05/09 HTML / CSS
加拿大时尚床上用品零售商:QE Home | Quilts Etc
2018/01/22 全球购物
猫咪家具:CatsPlay
2018/11/03 全球购物
员工年终考核评语
2014/12/31 职场文书
团拜会主持词
2015/07/04 职场文书
Python文件的操作示例的详细讲解
2021/04/08 Python
golang 实现菜单树的生成方式
2021/04/28 Golang