php将日期格式转换成xx天前的格式


Posted in PHP onApril 16, 2015

本文实例讲述了php将日期格式转换成xx天前格式的方法。分享给大家供大家参考。具体如下:

这段代码可以把时间格式化成3天前,5秒前,2年前的形式

// convert a date into a string that tells how long ago
// that date was.... eg: 2 days ago, 3 minutes ago.
function ago($d) {
 $c = getdate();
 $p = array('year', 'mon', 'mday', 'hours', 'minutes', 'seconds');
 $display = array('year', 'month', 'day', 'hour', 'minute', 'second');
 $factor = array(0, 12, 30, 24, 60, 60);
 $d = datetoarr($d);
 for ($w = 0; $w < 6; $w++) {
 if ($w > 0) {
  $c[$p[$w]] += $c[$p[$w-1]] * $factor[$w];
  $d[$p[$w]] += $d[$p[$w-1]] * $factor[$w];
 }
 if ($c[$p[$w]] - $d[$p[$w]] > 1) { 
  return ($c[$p[$w]] - $d[$p[$w]]).' '.$display[$w].'s ago';
 }
 }
 return '';
}
// you can replace this if need be. 
// This converts my dates returned from a mysql date string 
// into an array object similar to that returned by getdate().
function datetoarr($d) {
 preg_match("/([0-9]{4})(\\-)([0-9]{2})(\\-)([0-9]{2})([0-9]{2})(\\:)([0-9]{2})(\\:)([0-9]{2})/",$d,$matches);
 return array( 
 'seconds' => $matches[10], 
 'minutes' => $matches[8], 
 'hours' => $matches[6], 
 'mday' => $matches[5], 
 'mon' => $matches[3], 
 'year' => $matches[1], 
 );
}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP安装问题
Oct 09 PHP
用windows下编译过的eAccelerator for PHP 5.1.6实现php加速的使用方法
Sep 30 PHP
在WINDOWS中设置计划任务执行PHP文件的方法
Dec 19 PHP
PHP漏洞全解(详细介绍)
Nov 13 PHP
PHP字符串的递增和递减示例介绍
Feb 11 PHP
php一行代码获取文件后缀名实例分析
Nov 12 PHP
php生成图片验证码的实例讲解
Aug 03 PHP
PHP实现微信支付(jsapi支付)流程步骤详解
Mar 15 PHP
php实现表单提交上传文件功能
May 28 PHP
PHP中十六进制颜色与RGB颜色值互转的方法
Mar 18 PHP
laravel5表单唯一验证的实例代码
Sep 30 PHP
基于PHP实现用户在线状态检测
Nov 10 PHP
为百度UE编辑器上传图片添加水印功能
Apr 16 #PHP
php+ajax实现的点击浏览量加1
Apr 16 #PHP
PHP中curl_setopt函数用法实例分析
Apr 16 #PHP
微信公众平台开发实现2048游戏的方法
Apr 15 #PHP
PHP获取毫秒级时间戳的方法
Apr 15 #PHP
基于php的微信公众平台开发入门实例
Apr 15 #PHP
微信公众平台实现获取用户OpenID的方法
Apr 15 #PHP
You might like
php更新mysql后获取影响的行数发生异常解决方法
2013/03/28 PHP
PHP5.5在windows安装使用memcached服务端的方法
2014/04/16 PHP
php curl中gzip的压缩性能测试实例分析
2016/11/08 PHP
PHP基于方差和标准差计算学生成绩的稳定性示例
2017/07/04 PHP
Nigma vs Liquid BO3 第一场2.13
2021/03/10 DOTA
JavaScript 继承详解(一)
2009/07/13 Javascript
javascript appendChild,innerHTML,join性能比较代码
2009/08/29 Javascript
jquery 弹出层实现代码
2009/10/30 Javascript
不一样的文字闪烁 轮番闪烁
2009/11/11 Javascript
jquery 模拟类搜索框自动完成搜索提示功能(改进)
2010/05/24 Javascript
js操纵跨frame的三级联动select下拉选项实例介绍
2013/05/19 Javascript
原生Js页面滚动延迟加载图片实现原理及过程
2013/06/24 Javascript
js字符串操作方法实例分析
2015/05/06 Javascript
jquery trigger实现联动的方法
2016/02/29 Javascript
jQuery实现的表格前端排序功能示例
2017/09/18 jQuery
详解如何去除vue项目中的#——History模式
2017/10/13 Javascript
基于jQuery Ajax实现下拉框无刷新联动
2017/12/06 jQuery
vue中promise的使用及异步请求数据的方法
2018/11/08 Javascript
解决iView Table组件宽度只变大不变小的问题
2020/11/13 Javascript
[04:36]DOTA2国际邀请赛 ti3精彩集锦
2013/08/19 DOTA
python访问mysql数据库的实现方法(2则示例)
2016/01/06 Python
Python扩展内置类型详解
2018/03/26 Python
Python迷宫生成和迷宫破解算法实例
2019/12/24 Python
python列表返回重复数据的下标
2020/02/10 Python
Python生成并下载文件后端代码实例
2020/08/31 Python
Oakley官网:运动太阳镜、雪镜和服装
2016/09/30 全球购物
保险专业大专生求职信
2013/10/26 职场文书
幼儿园门卫制度
2014/01/29 职场文书
学习考察心得体会
2014/09/04 职场文书
医学专业大学生职业生涯规划书
2014/10/25 职场文书
期末考试复习计划
2015/01/19 职场文书
信仰纪录片观后感
2015/06/08 职场文书
力克胡哲观后感
2015/06/10 职场文书
事业单位工作人员2015年度思想工作总结
2015/10/15 职场文书
总结Python使用过程中的bug
2021/06/18 Python
浅谈Redis 中的过期删除策略和内存淘汰机制
2022/04/03 Redis