PHP实现时间日期友好显示实现代码


Posted in PHP onSeptember 08, 2019

系统的友好性在开发过程中是非常重要的,一个系统非常友好不光可以带给用户非常棒的使用体验,而且还可以使系统有这更长的寿命。今天这篇博文主要来展示一个我们如何让日期时间更加友好的显示。

下面就是使时间日期友好显示的代码:核心代码

<?php
 
 /**
  * =======================================
  * Created by Zhihua_W.
  * Author: Zhihua_W
  * Date: 2016/11/23 0001
  * Time: 下午 5:45
  * Project: PHP开发小技巧
  * Power: 实现日期时间友好显示
  * =======================================
  */
 
 /**
  * 日期时间友好显示
  * @param $time
  * @return bool|string
  */
 function friend_date($time)
 {
  if (!$time) {
   return false;
  }
  $fdate = '';
  $d = time() - intval($time);
  $ld = $time - mktime(0, 0, 0, 0, 0, date('Y')); //得出年
  $md = $time - mktime(0, 0, 0, date('m'), 0, date('Y')); //得出月
  $byd = $time - mktime(0, 0, 0, date('m'), date('d') - 2, date('Y')); //前天
  $yd = $time - mktime(0, 0, 0, date('m'), date('d') - 1, date('Y')); //昨天
  $dd = $time - mktime(0, 0, 0, date('m'), date('d'), date('Y')); //今天
  $td = $time - mktime(0, 0, 0, date('m'), date('d') + 1, date('Y')); //明天
  $atd = $time - mktime(0, 0, 0, date('m'), date('d') + 2, date('Y')); //后天
  if ($d == 0) {
   $fdate = '刚刚';
  } else {
   switch ($d) {
    case $d < $atd:
     $fdate = date('Y年m月d日', $time);
     break;
    case $d < $td:
     $fdate = '后天' . date('H:i', $time);
     break;
    case $d < 0:
     $fdate = '明天' . date('H:i', $time);
     break;
    case $d < 60:
     $fdate = $d . '秒前';
     break;
    case $d < 3600:
     $fdate = floor($d / 60) . '分钟前';
     break;
    case $d < $dd:
     $fdate = floor($d / 3600) . '小时前';
     break;
    case $d < $yd:
     $fdate = '昨天' . date('H:i', $time);
     break;
    case $d < $byd:
     $fdate = '前天' . date('H:i', $time);
     break;
    case $d < $md:
     $fdate = date('m月d日 H:i', $time);
     break;
    case $d < $ld:
     $fdate = date('m月d日', $time);
     break;
    default:
     $fdate = date('Y年m月d日', $time);
     break;
   }
  }
  return $fdate;
 }
 
 
 $time = 1442345132;
 echo friend_date($time);
PHP 相关文章推荐
第一节--面向对象编程
Nov 16 PHP
PHP+SQL 注入攻击的技术实现以及预防办法
Jan 27 PHP
PHP中extract()函数的妙用分析
Jul 11 PHP
探讨各种PHP字符串函数的总结分析
Jun 05 PHP
PHP设置一边执行一边输出结果的代码
Sep 30 PHP
对PHP新手的一些建议(PHP学习经验总结)
Aug 20 PHP
php文件扩展名判断及获取文件扩展名的N种方法
Sep 12 PHP
php数组函数array_walk用法示例
May 26 PHP
php中preg_replace_callback函数简单用法示例
Jul 21 PHP
PHP通过加锁实现并发情况下抢码功能
Aug 10 PHP
php实现跨域提交form表单的方法【2种方法】
Oct 17 PHP
tp5实现微信小程序多图片上传到服务器功能
Jul 16 PHP
PHP中将一个字符串部分字符用星号*替代隐藏的实现代码
Sep 08 #PHP
Yii框架连表查询操作示例
Sep 06 #PHP
Laravel框架中缓存的使用方法分析
Sep 06 #PHP
Laravel框架实现的上传图片到七牛功能详解
Sep 06 #PHP
浅析PHP7 的垃圾回收机制
Sep 06 #PHP
PHP的介绍以及优势详细分析
Sep 05 #PHP
laravel5.1框架基础之Blade模板继承简单使用方法分析
Sep 05 #PHP
You might like
我的论坛源代码(二)
2006/10/09 PHP
理解PHP中的stdClass类
2014/04/18 PHP
jQuery模拟超链接点击效果代码
2013/04/21 Javascript
JS写的贪吃蛇游戏(个人练习)
2013/07/08 Javascript
jquery的ajax简单结构示例代码
2014/02/17 Javascript
js以分隔符分隔数组中的元素并转换为字符串的方法
2016/11/16 Javascript
新闻上下滚动jquery 超简洁(必看篇)
2017/01/21 Javascript
angular动态删除ng-repaeat添加的dom节点的方法
2017/07/20 Javascript
前端把html表格生成为excel表格的实例
2017/09/19 Javascript
angular之ng-template模板加载
2017/11/09 Javascript
前端必备插件之纯原生JS的瀑布流插件Macy.js
2017/11/22 Javascript
vue 页面加载进度条组件实例
2018/02/05 Javascript
Vue实现自定义下拉菜单功能
2018/07/16 Javascript
使用jquery Ajax实现上传附件功能
2018/10/23 jQuery
详解Vue2.0组件的继承与扩展
2018/11/23 Javascript
浅谈es6中的元编程
2020/12/01 Javascript
[06:30]DOTA2英雄梦之声_第15期_死亡先知
2014/06/21 DOTA
[58:59]完美世界DOTA2联赛PWL S3 access vs CPG 第一场 12.13
2020/12/16 DOTA
使用python调用浏览器并打开一个网址的例子
2014/06/05 Python
Python多线程经典问题之乘客做公交车算法实例
2017/03/22 Python
利用python爬取斗鱼app中照片方法实例
2017/12/03 Python
python实现简单成绩录入系统
2019/09/19 Python
python实现视频压缩功能
2020/12/18 Python
python实现定时发送邮件
2020/12/23 Python
纯CSS和jQuery实现的在页面顶部显示的进度条效果2例(仿手机浏览器进度条效果)
2014/04/16 HTML / CSS
Smashbox官网:美国知名彩妆品牌
2017/01/05 全球购物
bonprix匈牙利:女士、男士和儿童服装
2019/07/19 全球购物
工商学院毕业生自荐信
2013/11/12 职场文书
《巨人的花园》教学反思
2014/02/12 职场文书
马智宇结婚主持词
2014/04/01 职场文书
机关作风整顿个人整改措施2014
2014/09/17 职场文书
2014年国庆节庆祝建国65周年比赛演讲稿
2014/09/21 职场文书
2014基层党员批评与自我批评范文
2014/09/24 职场文书
2016年小学“感恩教师”主题队日活动总结
2016/04/01 职场文书
企业管理不到位检讨书
2019/06/27 职场文书
Spring Boot实现文件上传下载
2022/08/14 Java/Android