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下MAIL的另一解决方案
Oct 09 PHP
第二节--PHP5 的对象模型
Nov 16 PHP
谈谈PHP的输入输出流
Feb 14 PHP
php面向对象全攻略 (十五) 多态的应用
Sep 30 PHP
PHP代码审核的详细介绍
Jun 13 PHP
php 备份数据库代码(生成word,excel,json,xml,sql)
Jun 23 PHP
php中simplexml_load_file函数用法实例
Nov 12 PHP
php中静态类与静态变量用法的区别分析
Jan 15 PHP
php绘图之生成饼状图的方法
Jan 24 PHP
Symfony2框架学习笔记之HTTP Cache用法详解
Mar 18 PHP
php 的反射详解及示例代码
Aug 25 PHP
PHP的微信支付接口使用方法讲解
Mar 08 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去除换行(回车换行)的三种方法
2014/03/26 PHP
php实现监控varnish缓存服务器的状态
2014/12/30 PHP
PHP 实现的将图片转换为TXT
2015/10/21 PHP
Javascript下的keyCode键码值表
2007/04/10 Javascript
jquery 表单取值常用代码
2009/12/22 Javascript
Node.js实现简单聊天服务器
2014/06/20 Javascript
jQuery div拖拽用法实例
2016/01/14 Javascript
学习javascript文件加载优化
2016/02/19 Javascript
浅谈jQuery中hide和fadeOut的区别 show和fadeIn的区别
2016/08/18 Javascript
使用PBFunc在Powerbuilder中支付宝当面付款功能
2016/10/01 Javascript
javaScript生成支持中文带logo的二维码(jquery.qrcode.js)
2017/01/03 Javascript
js canvas实现擦除效果示例代码
2017/04/26 Javascript
bootstrap-table实现服务器分页的示例 (spring 后台)
2017/09/01 Javascript
mescroll.js上拉加载下拉刷新组件使用详解
2017/11/13 Javascript
vuex操作state对象的实例代码
2018/04/25 Javascript
JavaScript常见JSON操作实例分析
2018/08/08 Javascript
Layui选项卡制作历史浏览记录的方法
2019/09/28 Javascript
解决Angularjs异步操作后台请求用$q.all排列先后顺序问题
2019/11/29 Javascript
python将MongoDB里的ObjectId转换为时间戳的方法
2015/03/13 Python
Python爬虫beautifulsoup4常用的解析方法总结
2019/02/25 Python
Python正则表达式匹配日期与时间的方法
2019/07/07 Python
Python实现word2Vec model过程解析
2019/12/16 Python
Django框架实现在线考试系统的示例代码
2020/11/30 Python
美国在线宠物用品商店:Entirely Pets
2017/01/01 全球购物
夏尔巴人登珠峰品牌:Sherpa Adventure Gear
2018/02/08 全球购物
亚洲最大的眼镜批发商和零售商之一:Glasseslit
2018/10/08 全球购物
历史专业个人求职信范文
2013/12/07 职场文书
贷款担保书范文
2014/05/13 职场文书
公司捐款倡议书
2014/05/14 职场文书
2015年财务科工作总结范文
2015/05/13 职场文书
亮剑观后感
2015/06/05 职场文书
导游词之北京明十三陵
2019/10/28 职场文书
自己搭建resnet18网络并加载torchvision自带权重的操作
2021/05/13 Python
手把手教你怎么用Python实现zip文件密码的破解
2021/05/27 Python
Python基础知识学习之类的继承
2021/05/31 Python
Win10此设备不支持接收Miracast无法投影的解决方法
2022/07/07 数码科技