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 相关文章推荐
超级简单的发送邮件程序
Oct 09 PHP
用PHP和ACCESS写聊天室(一)
Oct 09 PHP
php更改目录及子目录下所有的文件后缀的代码
Sep 24 PHP
美图秀秀web开放平台--PHP流式上传和表单上传示例分享
Jun 22 PHP
Mac OS下配置PHP+MySql环境
Feb 25 PHP
PHP输出两个数字中间有多少个回文数的方法
Mar 23 PHP
详解PHP对象的串行化与反串行化
Jan 24 PHP
解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or directory
Feb 25 PHP
PHP实现统计所有字符在字符串中出现次数的方法
Oct 17 PHP
PHP实现浏览器中直接输出图片的方法示例
Mar 14 PHP
laravel框架的安装与路由实例分析
Oct 11 PHP
浅谈如何提高PHP代码质量之端到端集成测试
May 28 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
玩转图像函数库―常见图形操作
2006/09/03 PHP
php创建多级目录代码
2008/06/05 PHP
Laravel中七个非常有用但很少人知道的Carbon方法
2017/09/21 PHP
PHP获取类私有属性的3种方法
2020/09/10 PHP
jquery 可排列的表实现代码
2009/11/13 Javascript
利用jQuery简单实现产品展示图片左右滚动功能(示例代码)
2014/01/02 Javascript
jQuery 获取兄弟元素的几种不错方法
2014/05/23 Javascript
我的Node.js学习之路(一)
2014/07/06 Javascript
基于NodeJS的前后端分离的思考与实践(四)安全问题解决方案
2014/09/26 NodeJs
PHP使用方法重载实现动态创建属性的get和set方法
2014/11/17 Javascript
使用jQuery实现验证上传图片的格式与大小
2014/12/03 Javascript
纯js实现无限空间大小的本地存储
2015/06/18 Javascript
asp知识整理笔记3(问答模式)
2015/09/27 Javascript
基于Bootstrap重置输入框内容按钮插件
2016/05/12 Javascript
JS实现刷新父页面不弹出提示框的方法
2016/06/22 Javascript
Javascript 判断两个IP是否在同一网段实例代码
2016/11/28 Javascript
使用jQuery监听扫码枪输入并禁止手动输入的实现方法(推荐)
2017/03/21 jQuery
jQuery插件FusionCharts实现的MSBar3D图效果示例【附demo源码】
2017/03/23 jQuery
Google 爬虫如何抓取 JavaScript 的内容
2017/04/07 Javascript
详解vue express启动数据服务
2017/07/05 Javascript
vue写一个组件
2018/04/09 Javascript
vue实现底部菜单功能
2018/07/24 Javascript
JS判断用户用的哪个浏览器实例详解
2018/10/09 Javascript
详解webpack引入第三方库的方式以及注意事项
2019/01/15 Javascript
深入理解Vue keep-alive及实践总结
2019/08/21 Javascript
[01:12:08]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.24
2019/09/10 DOTA
Python Web框架Flask中使用新浪SAE云存储实例
2015/02/08 Python
在Python中操作字符串之replace()方法的使用
2015/05/19 Python
html5 的a标签 Href 拨电话的写法
2013/11/04 HTML / CSS
使用HTML5和CSS3制作一个模态框的示例
2018/03/07 HTML / CSS
办公室前台岗位职责
2014/01/04 职场文书
安全横幅标语
2014/06/09 职场文书
营业员岗位职责
2015/02/11 职场文书
预备党员个人总结
2015/02/14 职场文书
聊一聊python常用的编程模块
2021/05/14 Python
python turtle绘图命令及案例
2021/11/23 Python