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 相关文章推荐
php 删除无限级目录与文件代码共享
Nov 22 PHP
UTF8编码内的繁简转换的PHP类
Jul 09 PHP
在项目中寻找代码的坏命名
Jul 14 PHP
yii框架配置默认controller和action示例
Apr 30 PHP
php生成rss类用法实例
Apr 14 PHP
php中JSON的使用方法
Apr 30 PHP
你应该知道PHP浮点数知识
May 13 PHP
twig里使用js变量的方法
Feb 05 PHP
mysql查找删除重复数据并只保留一条实例详解
Sep 24 PHP
thinkPHP js文件中U方法不被解析问题的解决方法
Dec 05 PHP
PHP实现微信对账单处理
Oct 01 PHP
PHP使用PhpSpreadsheet操作Excel实例详解
Mar 26 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
PHP5中GD库生成图形验证码(有汉字)
2013/07/28 PHP
PHP基于ORM方式操作MySQL数据库实例
2017/06/21 PHP
ExtJs扩展之GroupPropertyGrid代码
2010/03/05 Javascript
jquery移除button的inline onclick事件(已测试及兼容浏览器)
2013/01/25 Javascript
关于jQuery新的事件绑定机制on()的使用技巧
2013/04/26 Javascript
如何让页面加载完成后执行js
2013/06/26 Javascript
父元素与子iframe相互获取变量和元素对象的具体实现
2013/10/15 Javascript
jquery div拖动效果示例代码
2013/12/08 Javascript
js实现仿百度瀑布流的方法
2015/02/05 Javascript
在Python中使用glob模块查找文件路径的方法
2015/06/17 Javascript
jquery实现图片上传之前预览的方法
2015/07/11 Javascript
jQuery基础知识点总结(必看)
2016/05/31 Javascript
JavaScript注入漏洞的原理及防范(详解)
2016/12/04 Javascript
JavaScript运动框架 多物体任意值运动(三)
2017/05/17 Javascript
jQuery实现的点击按钮改变样式功能示例
2018/07/21 jQuery
对Vue beforeRouteEnter 的next执行时机详解
2018/08/25 Javascript
vuex的module模块用法示例
2018/11/12 Javascript
vue实现网络图片瀑布流 + 下拉刷新 + 上拉加载更多(步骤详解)
2020/01/14 Javascript
Vue如何使用混合Mixins和插件开发详解
2020/02/05 Javascript
Javascript摸拟自由落体与上抛运动原理与实现方法详解
2020/04/08 Javascript
JSON stringify方法原理及实例解析
2020/10/23 Javascript
使用pandas对矢量化数据进行替换处理的方法
2018/04/11 Python
Python中if elif else及缩进的使用简述
2018/05/31 Python
用python求一个数组的和与平均值的实现方法
2019/06/29 Python
TensorFlow实现简单的CNN的方法
2019/07/18 Python
python requests库爬取豆瓣电视剧数据并保存到本地详解
2019/08/10 Python
Django 自动生成api接口文档教程
2019/11/19 Python
Python函数参数分类原理详解
2020/05/28 Python
Python进行特征提取的示例代码
2020/10/15 Python
都柏林通行卡/城市通票:The Dublin Pass
2020/02/16 全球购物
服装采购员岗位职责
2014/03/15 职场文书
2014年镇党建工作汇报材料
2014/11/02 职场文书
征求意见函
2015/06/05 职场文书
《风娃娃》教学反思
2016/02/18 职场文书
终止合同协议书范本
2016/03/22 职场文书
python 离散点图画法的实现
2022/04/01 Python