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

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

/**
* 友好日期时间
*
* @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异常处理技术,顶级异常处理器

定义顶级异常处理器用到的函数是 set_exception_handler("My_exception"); 这里的My_expection是开发者自定义的异常处理函数,既顶级异常处理器...

PHP中FTP相关函数小结

本文实例讲述了PHP中FTP相关函数。分享给大家供大家参考,具体如下: <?php set_time_limit(0); //转存本地地址 define( 'STO...

php简单计算页面加载时间的方法

本文实例讲述了php简单计算页面加载时间的方法。分享给大家供大家参考。具体实现方法如下: 简单的把开始时间放在页面头部,结束时间放在页面尾部,计算页面加载时间 $start = ti...

PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法示例

本文实例讲述了PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法。分享给大家供大家参考,具体如下: 1、如何在php中把驼峰样式的字符串转换成下划线样式的字符串。例:输入...

PHP静态文件生成类实例

本文实例讲述了PHP静态文件生成类。分享给大家供大家参考。 具体实现代码如下: 复制代码 代码如下:<?php class CreateHtml { function...