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 相关文章推荐
PHP开发中常用的字符串操作函数
Feb 08 PHP
解析:通过php socket并借助telnet实现简单的聊天程序
Jun 18 PHP
解析php file_exists无效的解决办法
Jun 26 PHP
ThinkPHP中自定义目录结构的设置方法
Aug 15 PHP
php去除头尾空格的2种方法
Mar 16 PHP
使用图灵api创建微信聊天机器人
Jul 23 PHP
php函数连续调用实例分析
Jul 30 PHP
php简单日历函数
Oct 28 PHP
Laravel路由设定和子路由设定实例分析
Mar 30 PHP
PHP简单实现文本计数器的方法
Apr 28 PHP
Laravel实现自定义错误输出内容的方法
Oct 10 PHP
利用Homestead快速运行一个Laravel项目的方法详解
Nov 14 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 无限级分类,超级简单的无限级分类,支持输出树状图
2014/06/29 PHP
PHP数据库编程之MySQL优化策略概述
2017/08/16 PHP
PHP异常类及异常处理操作实例详解
2018/12/19 PHP
PHP7 windows支持
2021/03/09 PHP
自适应高度框架 ----属个人收藏内容
2007/01/22 Javascript
javascript 写类方式之一
2009/07/05 Javascript
javascript实现日历控件(年月日关闭按钮)
2012/12/12 Javascript
jquery实现类似EasyUI的页面布局可改变左右的宽度
2020/09/12 Javascript
解析JavaScript模仿块级作用域
2016/12/29 Javascript
微信小程序 五星评价功能的实现
2017/03/09 Javascript
详解vue项目优化之按需加载组件-使用webpack require.ensure
2017/06/13 Javascript
jQuery自定义多选下拉框效果
2017/06/19 jQuery
详谈构造函数加括号与不加括号的区别
2017/10/26 Javascript
vue项目持久化存储数据的实现代码
2018/10/01 Javascript
Vue实现回到顶部和底部动画效果
2019/07/31 Javascript
Vue中keep-alive组件作用详解
2020/02/04 Javascript
vue如何在用户要关闭当前网页时弹出提示的实现
2020/05/31 Javascript
python使用htmllib分析网页内容的方法
2015/05/08 Python
python字符类型的一些方法小结
2016/05/16 Python
Python线程指南详细介绍
2017/01/05 Python
Python实现字典排序、按照list中字典的某个key排序的方法示例
2018/12/18 Python
Python使用selenium + headless chrome获取网页内容的方法示例
2019/10/16 Python
matplotlib教程——强大的python作图工具库
2020/10/15 Python
详解HTML5 录音的踩坑之旅
2017/12/26 HTML / CSS
德国内衣、泳装和睡衣网上商店:Bigsize Dessous
2018/07/09 全球购物
拉斯维加斯城市观光通行证:Las Vegas Pass
2019/05/21 全球购物
C语言怎样定义和声明全局变量和函数最好
2013/11/26 面试题
党风廉正建设责任书
2015/01/29 职场文书
介绍信如何写
2015/01/31 职场文书
2015年入党决心书
2015/02/05 职场文书
鲁滨孙漂流记读书笔记
2015/06/30 职场文书
个人自我鉴定怎么写?
2019/07/01 职场文书
关于考试抄袭的检讨书
2019/11/02 职场文书
基于PyQT5制作一个桌面摸鱼工具
2022/02/15 Python
使用Redis实现点赞取消点赞的详细代码
2022/03/20 Redis
GPU服务器的多用户配置方法
2022/07/07 Servers