PHP将DateTime对象转化为友好时间显示的实现代码


Posted in PHP onSeptember 20, 2011
/** 
* 友好日期时间 
* 
* @param DateTime $datetime 日期时间 
* @param int $size 精确到位数 
* @throws \InvalidArgumentException 
* @return string 
*/ 
function friendly_date($datetime, $size=1) 
{ 
if (is_int($datetime)) { 
$datetime = new \DateTime($datetime); 
} 
if (!($datetime instanceof \DateTime)) { 
throw new \InvalidArgumentException('invalid "DateTime" object'); 
} 
$now = new \DateTime(); 
$interval = $now->diff($datetime); 
$intervalData = array( 
$interval->y, $interval->m, $interval->d, 
$interval->h, $interval->i, $interval->s, 
); 
$intervalFormat = array('年', '个月', '天', '小时', '分种', '秒'); 
foreach($intervalData as $index=>$value) { 
if ($value) { 
$intervalData[$index] = $value . $intervalFormat[$index]; 
} else { 
unset($intervalData[$index]); 
unset($intervalFormat[$index]); 
} 
} 
return implode('', array_slice($intervalData, 0, $size)); 
}
PHP 相关文章推荐
2.PHP入门
Oct 09 PHP
PHP教程 预定义变量
Oct 23 PHP
Window下PHP三种运行方式图文详解
Jun 11 PHP
PHP时间格式控制符对照表分享
Jul 23 PHP
PHP file_get_contents设置超时处理方法
Sep 30 PHP
MongoDB在PHP中的常用操作小结
Feb 20 PHP
PHP判断网络文件是否存在的方法
Mar 12 PHP
Yii2中关联查询简单用法示例
Aug 10 PHP
PHP下载远程图片的几种方法总结
Apr 07 PHP
PHP+AJAX 投票器功能
Nov 11 PHP
yii2 开发api接口时优雅的处理全局异常的方法
May 14 PHP
PHP使用HTML5 FileApi实现Ajax上传文件功能示例
Jul 01 PHP
php方法调用模式与函数调用模式简例
Sep 20 #PHP
php若干单维数组遍历方法的比较
Sep 20 #PHP
PHP学习笔记 用户注册模块用户类以及验证码类
Sep 20 #PHP
PHP无刷新上传文件实现代码
Sep 19 #PHP
PHP通过正则表达式下载图片到本地的实现代码
Sep 19 #PHP
PHP下利用shell后台运行PHP脚本,并获取该脚本的Process ID的代码
Sep 19 #PHP
php去除重复字的实现代码
Sep 16 #PHP
You might like
PHP个人网站架设连环讲(三)
2006/10/09 PHP
PHP 变量类型的强制转换
2009/10/23 PHP
浅谈PHP 闭包特性在实际应用中的问题
2009/10/30 PHP
phpMyAdmin 链接表的附加功能尚未激活的问题
2010/08/01 PHP
PHP 设置MySQL连接字符集的方法
2011/01/02 PHP
php中取得文件的后缀名?
2012/02/20 PHP
php实现粘贴截图并完成上传功能
2015/05/17 PHP
Zend Studio使用技巧两则
2016/04/01 PHP
微信支付的开发流程详解
2016/09/13 PHP
通过修改Laravel Auth使用salt和password进行认证用户详解
2017/08/17 PHP
jQuery contains过滤器实现精确匹配使用方法
2013/04/12 Javascript
jQuery bxCarousel实现图片滚动切换效果示例代码
2013/05/15 Javascript
探讨js字符串数组拼接的性能问题
2014/10/11 Javascript
JavaScript使用二分查找算法在数组中查找数据的方法
2015/04/07 Javascript
js面向对象的写法
2016/02/19 Javascript
基于Echarts 3.19 制作常用的图形(非静态)
2016/05/19 Javascript
js is_valid_filename验证文件名的函数
2017/07/19 Javascript
bootstrap table实现合并单元格效果
2018/12/24 Javascript
JavaScript变量提升和严格模式实例分析
2019/01/27 Javascript
使用jQuery如何写一个含验证码的登录界面
2019/05/13 jQuery
微信小程序wx.navigateTo中events属性实现页面间通信传值,数据同步
2019/07/13 Javascript
python实现文件路径和url相互转换的方法
2015/07/06 Python
Pyqt5 实现跳转界面并关闭当前界面的方法
2019/06/19 Python
用Python实现最速下降法求极值的方法
2019/07/10 Python
python自动化unittest yaml使用过程解析
2020/02/03 Python
Python实现敏感词过滤的4种方法
2020/09/12 Python
福克斯租车:Fox Rent A Car
2017/04/13 全球购物
时尚圣经:The Fashion Bible
2019/03/03 全球购物
领导批评与自我批评范文
2014/10/16 职场文书
信访稳定工作汇报
2014/10/27 职场文书
解除劳动合同通知书范本
2015/04/16 职场文书
2015年政务公开工作总结
2015/05/19 职场文书
《钢铁是怎样炼成的》高中读后感
2019/08/07 职场文书
python3使用diagrams绘制架构图的步骤
2021/04/08 Python
MongoDB数据库常用的10条操作命令
2021/06/18 MongoDB
redis数据一致性的实现示例
2022/03/18 Redis