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 相关文章推荐
中英文字符串翻转函数
Dec 09 PHP
php数组函数序列 之array_count_values() 统计数组中所有值出现的次数函数
Oct 29 PHP
php读取文件内容至字符串中,同时去除换行、空行、行首行尾空格(Zjmainstay原创)
Jul 31 PHP
PHP编程中的常见漏洞和代码实例
Aug 06 PHP
PHP生成可点击刷新的验证码简单示例
May 13 PHP
PHP session会话操作技巧小结
Sep 27 PHP
PHP基于SimpleXML生成和解析xml的方法示例
Jul 17 PHP
基于PHP常用文件函数和目录函数整理
Aug 17 PHP
基于 Swoole 的微信扫码登录功能实现代码
Jan 15 PHP
PHP中十六进制颜色与RGB颜色值互转的方法
Mar 18 PHP
Laravel中正确地返回HTTP状态码方法示例
Sep 10 PHP
php实现简单四则运算器
Nov 29 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/03/28 PHP
php 网页游戏开发入门教程一(webgame+design)
2009/10/26 PHP
php skymvc 一款轻量、简单的php
2011/06/28 PHP
java微信开发之上传下载多媒体文件
2016/06/24 PHP
mysql desc(DESCRIBE)命令实例讲解
2016/09/24 PHP
[原创]保存的js无法执行的解决办法
2007/02/25 Javascript
文本框的字数限制功能jquery插件
2009/11/24 Javascript
JQuery优缺点分析说明
2011/04/10 Javascript
javascript题目,重写函数让其无限相加
2012/02/15 Javascript
让jQuery与其他JavaScript库并存避免冲突的方法
2013/12/23 Javascript
js图片自动轮播代码分享(js图片轮播)
2014/05/06 Javascript
javascript模拟post提交隐藏地址栏的参数
2014/09/03 Javascript
jQuery实现鼠标经过时出现隐藏层文字链接的方法
2015/10/12 Javascript
如何利用AngularJS打造一款简单Web应用
2015/12/05 Javascript
javascript类型系统——日期Date对象全面了解
2016/07/13 Javascript
简单实现js拖拽效果
2017/07/25 Javascript
Vue.js 通过jQuery ajax获取数据实现更新后重新渲染页面的方法
2018/08/09 jQuery
利用React Router4实现的服务端直出渲染(SSR)
2019/01/07 Javascript
JavaScript实现随机点名器
2020/03/25 Javascript
原生js实现自定义滚动条
2021/01/20 Javascript
python之模拟鼠标键盘动作具体实现
2013/12/30 Python
Python在信息学竞赛中的运用及Python的基本用法(详解)
2017/08/15 Python
python DataFrame 修改列的顺序实例
2018/04/10 Python
Python生成器定义与简单用法实例分析
2018/04/30 Python
Python 虚拟空间的使用代码详解
2019/06/10 Python
python如何解析配置文件并应用到项目中
2019/06/27 Python
python list多级排序知识点总结
2019/10/23 Python
Python使用Tkinter实现滚动抽奖器效果
2020/01/06 Python
Pycharm中import torch报错的快速解决方法
2020/03/05 Python
css3 border-radius属性详解
2017/07/05 HTML / CSS
美国牛仔品牌:True Religion
2018/11/16 全球购物
简述进程的启动、终止的方式以及如何进行进程的查看
2014/02/20 面试题
优秀大学生求职自荐信范文
2014/04/19 职场文书
车间安全生产标语
2014/06/06 职场文书
领导干部整治奢华浪费之风思想汇报
2014/10/07 职场文书
pytorch中的numel函数用法说明
2021/05/13 Python