欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-04-09 09:29:31
复制代码 代码如下: /** * 友好日期时间 * * @param datetime $datetime 日期时间 * @param int $size 精确到位数 *...
复制代码 代码如下:

/**
* 友好日期时间
*
* @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));
}