php时间算法 转换 (类似微信朋友圈时间显示)

php时间算法 转换 (类似微信朋友圈时间显示)

程序判断逻辑

■日期的年份 是今年
□如果时间小于60秒
刚刚
□如果时间大于60秒 小于60分钟
X分钟前
□如果时间 小于24小时
X小时前
□如果是昨天
昨天 XX:XX
□如果是其他
06月12日 13:13
■日期的年份不是今年
2015年05月05日 10:10

程序代码

<?php
$create = date ( '2019-12-16 14:23:01' );
$current = date ( 'Y-m-d H:i:s' );

echo getformatter ( strtotime ( $create ), strtotime ( $current ) );

/**
 * 时间转换
 *
 * @param $create 对象日时时间戳        	
 * @param $current 系统日时时间戳        	
 * @return 转换后的字符串
 */
function getformatter($create, $current) {
	if (date ( "Y", $current ) == date ( "Y", $create )) {
		$time = $current - $create;
		if ($time < 60) {
			return "刚刚";
		}
		
		$sec = $time / 60;
		if ($sec < 60) {
			return round ( $sec ) . "分钟前";
		}
		
		$hours = $time / 3600;
		if ($hours < 48) {
			
			if (date ( 'Ymd', $create ) + 1 == date ( 'Ymd', $current )) {
				return "昨天 " . date ( "H:i", $create );
			} elseif ($hours < 24) {
				return round ( $hours ) . "小时前";
			}
		}
		
		return date ( "m月d日 H:i", $create );
	} else {
		return date ( "Y年m月d日 H:i", $create );
	}
}
?>

文章参照:
https://www.cnblogs.com/Lovexiaohuzi/p/6688325.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值