PHP实现时间轴函数代码


Posted in PHP onOctober 08, 2011

本文将介绍如何实现基于时间轴的时间的转换。
首先我们要明白时间的几个函数:
time():返回当前的 Unix 时间戳
date():格式化一个本地时间/日期。
应用举例:

date("Y-m-d H:i:s",time()); //格式化当前时间,输出:2011-9-24 07:27:35

strtotime():将任何英文文本的日期时间描述解析为 Unix 时间戳。
应用举例:
echo strtotime("+1 day"), "\n"; //输出1天前的时间戳:1316932222

date_default_timezone_set():设定要用的默认时区。
一般我们设置北京时间:date_default_timezone_set("PRC");
理解上面几个函数后我们来写时间轴函数:
该函数的原理就是将系统当前时间与目标时间比较,得到一个差值,再将差值与时间范围(转换成秒)比较,根据其处在时间轴的范围输出不同的结果(如:5分钟前)。为了便于计算,我们将时间都转换成Unix时间戳。
function tranTime($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; 
}

函数tranTime()中的参数$time必须为Unix时间戳,如果不是请先用strtotime()将其转换成Unix时间戳。上面的代码一看就明白了,不用再多述。
调用函数,直接输出:
$times="1316932222";  
echo tranTime($times);
PHP 相关文章推荐
下载文件的点击数回填
Oct 09 PHP
PHP函数utf8转gb2312编码
Dec 21 PHP
php 图片上传类代码
Jul 17 PHP
初学CAKEPHP 基础教程
Nov 02 PHP
php strcmp使用说明
Apr 22 PHP
php删除与复制文件夹及其文件夹下所有文件的实现代码
Jan 23 PHP
解析smarty模板中类似for的功能实现
Jun 18 PHP
php格式化金额函数分享
Feb 02 PHP
PHP命令行执行整合pathinfo模拟定时任务实例
Aug 12 PHP
php实现替换手机号中间数字为*号及隐藏IP最后几位的方法
Nov 16 PHP
浅谈PHP发送HTTP请求的几种方式
Jul 25 PHP
php接口隔离原则实例分析
Nov 11 PHP
PHP+Mysql+jQuery实现动态展示信息
Oct 08 #PHP
PHP+Mysql+jQuery实现发布微博程序 jQuery篇
Oct 08 #PHP
php实现用户在线时间统计详解
Oct 08 #PHP
php 文件缓存函数
Oct 08 #PHP
php数字转汉字代码(算法)
Oct 08 #PHP
PHP判断远程url是否有效的几种方法小结
Oct 08 #PHP
php下利用curl判断远程文件是否存在的实现代码
Oct 08 #PHP
You might like
php自动跳转中英文页面
2008/07/29 PHP
php实例分享之html转为rtf格式
2014/06/02 PHP
PHP has encountered a Stack overflow问题解决方法
2014/11/03 PHP
PHP用PDO如何封装简单易用的DB类详解
2017/07/30 PHP
javascript学习(二)javascript常见问题总结
2013/01/02 Javascript
js阻止默认事件与js阻止事件冒泡示例分享 js阻止冒泡事件
2014/01/27 Javascript
js计算德州扑克牌面值的方法
2015/03/04 Javascript
jQuery中$.ajax()和$.getJson()同步处理详解
2015/08/12 Javascript
使用jQuery操作HTML的table表格的实例解析
2016/03/13 Javascript
Kindeditor在线文本编辑器如何过滤HTML
2016/04/14 Javascript
jQuery中页面返回顶部的方法总结
2016/12/30 Javascript
详解用node.js实现简单的反向代理
2017/06/26 Javascript
纯js实现的积木(div层)拖动功能示例
2017/07/19 Javascript
解决vue+webpack打包路径的问题
2018/03/06 Javascript
解析Json字符串的三种方法日常常用
2018/05/02 Javascript
总结Python编程中三条常用的技巧
2015/05/11 Python
python统计文本字符串里单词出现频率的方法
2015/05/26 Python
将pandas.dataframe的数据写入到文件中的方法
2018/12/07 Python
详解用Python为直方图绘制拟合曲线的两种方法
2019/08/21 Python
python使用itchat模块给心爱的人每天发天气预报
2019/11/25 Python
Pytorch高阶OP操作where,gather原理
2020/04/30 Python
Python并发爬虫常用实现方法解析
2020/11/19 Python
html5简介_动力节点Java学院整理
2017/07/07 HTML / CSS
美国在线眼镜商城:Eyeglasses.com
2017/06/26 全球购物
北美最大的零售退货翻新商:VIP Outlet
2019/11/21 全球购物
精彩的大学生自我评价
2013/11/17 职场文书
高中自我评价范文
2014/01/27 职场文书
个性与发展自我评价
2014/02/11 职场文书
机电职业生涯规划书范文
2014/03/08 职场文书
社区综治宣传月活动总结
2014/07/02 职场文书
教师自我剖析材料范文
2014/09/30 职场文书
2014年村支部书记四风对照检查材料思想汇报
2014/10/02 职场文书
如何撰写出一份完美的商业计划书?
2019/07/12 职场文书
智慧人生:永远不需要向任何人解释你自己
2019/08/20 职场文书
python自动化测试之Selenium详解
2022/03/13 Python
Python作用域和名称空间的详细介绍
2022/04/13 Python