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 02 PHP
php执行sql语句的写法
Mar 10 PHP
PHP判断搜索引擎蜘蛛并自动记忆到文件的代码
Feb 04 PHP
PHP运行模式的深入理解
Jun 03 PHP
PHP将XML转数组过程详解
Nov 13 PHP
PHP获取当前页面URL函数实例
Oct 22 PHP
php简单定时执行任务的实现方法
Feb 23 PHP
PHP中的魔术方法总结和使用实例
May 11 PHP
yii2实现分页,带搜索的分页功能示例
Jan 07 PHP
用PHP将Unicode 转化为UTF-8的实现方法(推荐)
Feb 08 PHP
PHP 7.0新增加的特性介绍
Jun 08 PHP
PHP-FPM 设置多pool及配置文件重写操作示例
Oct 02 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中的多态性[译]
2011/08/02 PHP
解析php中mysql_connect与mysql_pconncet的区别详解
2013/05/15 PHP
微信扫描二维码登录网站代码示例
2013/12/30 PHP
PHP常用的排序和查找算法
2015/08/06 PHP
详细对比php中类继承和接口继承
2018/10/11 PHP
Javascript 构造函数,公有,私有特权和静态成员定义方法
2009/11/30 Javascript
Jqgrid设置全选(选择)及获取选择行的值示例代码
2013/12/28 Javascript
jQuery中bind与live的用法及区别小结
2014/01/27 Javascript
JS实现根据当前文字选择返回被选中的文字
2014/05/21 Javascript
js与jquery正则验证电子邮箱、手机号、邮政编码的方法
2016/07/04 Javascript
关于Vue.js 2.0的Vuex 2.0 你需要更新的知识库
2016/11/30 Javascript
原生和jQuery的ajax用法详解
2017/01/23 Javascript
vue2.0 与 bootstrap datetimepicker的结合使用实例
2017/05/22 Javascript
浅谈Angular HttpClient简单入门
2018/05/04 Javascript
深入理解Vue 的钩子函数
2018/09/05 Javascript
nuxt.js中间件实现拦截权限判断的方法
2018/11/21 Javascript
[01:14:35]DOTA2上海特级锦标赛B组资格赛#1 Alliance VS Fnatic第一局
2016/02/26 DOTA
[01:01:04]2018DOTA2亚洲邀请赛 4.5 淘汰赛 OpTic vs TNC 第一场
2018/04/06 DOTA
Python利用operator模块实现对象的多级排序详解
2017/05/09 Python
python networkx 根据图的权重画图实现
2019/07/10 Python
python实现点击按钮修改数据的方法
2019/07/17 Python
Django中使用CORS实现跨域请求过程解析
2019/08/05 Python
TensorFlow打印输出tensor的值
2020/04/19 Python
python 安装移动复制第三方库操作
2020/07/13 Python
HTML5边玩边学(3)像素和颜色
2010/09/21 HTML / CSS
de Bijenkorf比利时官网:荷兰最知名的百货商店
2017/06/29 全球购物
初中三好学生事迹材料
2014/01/13 职场文书
2014年三八妇女节活动方案
2014/02/28 职场文书
校园学雷锋活动月总结
2014/03/09 职场文书
同学会主持词
2014/03/18 职场文书
电话客服工作职责
2014/07/27 职场文书
死亡诗社观后感
2015/06/05 职场文书
学习委员竞选稿
2015/11/20 职场文书
中学教代会开幕词
2016/03/04 职场文书
JS ES6异步解决方案
2021/04/29 Javascript
Redis集群节点通信过程/原理流程分析
2022/03/18 Redis