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 相关文章推荐
php中常用编辑器推荐
Jan 02 PHP
PHP5 面向对象(学习记录)
Dec 02 PHP
深入PHP获取随机数字和字母的方法详解
Jun 06 PHP
php中3种方法删除字符串中间的空格
Mar 10 PHP
destoon安全设置中需要设置可写权限的目录及文件
Jun 21 PHP
PHP针对JSON操作实例分析
Jan 12 PHP
PHP使用ffmpeg给视频增加字幕显示的方法
Mar 12 PHP
thinkphp在低版本Nginx 下支持PATHINFO的方法分享
May 27 PHP
PHP入门教程之使用Mysqli操作数据库的方法(连接,查询,事务回滚等)
Sep 11 PHP
php的常量和变量实例详解
Jun 27 PHP
php实现的三个常用加密解密功能函数示例
Nov 06 PHP
PHP asXML()函数讲解
Feb 03 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
在PHP中使用反射技术的架构插件使用说明
2010/05/18 PHP
php设计模式 Template (模板模式)
2011/06/26 PHP
PHP获取客户端真实IP地址的5种情况分析和实现代码
2014/07/08 PHP
PHP命名空间(namespace)的使用基础及示例
2014/08/18 PHP
Fedora下安装php Redis扩展笔记
2014/09/03 PHP
学习js所必须要知道的一些
2007/03/07 Javascript
js获取或设置当前窗口url参数的小例子
2013/10/14 Javascript
JavaScript的History API使搜索引擎抓取AJAX内容
2015/12/07 Javascript
理解JavaScript事件对象
2016/01/25 Javascript
Javascript实现登录记住用户名和密码功能
2017/03/22 Javascript
JS表格组件神器bootstrap table使用指南详解
2017/04/12 Javascript
基于复选框demo(分享)
2017/09/27 Javascript
ES6学习教程之对象字面量详解
2017/10/09 Javascript
React SSR样式及SEO的实践
2018/10/22 Javascript
小程序获取周围IBeacon设备的方法
2018/10/31 Javascript
详解vue-cli3多环境打包配置
2019/03/28 Javascript
nodejs中各种加密算法的实现详解
2019/07/11 NodeJs
layui使用数据表格实现购物车功能
2019/07/26 Javascript
python使用pyhook监控键盘并实现切换歌曲的功能
2014/07/18 Python
5个很好的Python面试题问题答案及分析
2018/01/19 Python
Python实现的端口扫描功能示例
2018/04/08 Python
10分钟教你用Python实现微信自动回复功能
2018/11/28 Python
python itchat实现调用微信接口的第三方模块方法
2019/06/11 Python
python+pygame实现坦克大战
2019/09/10 Python
python输出数组中指定元素的所有索引示例
2019/12/06 Python
python global和nonlocal用法解析
2020/02/03 Python
python 用pandas实现数据透视表功能
2020/12/21 Python
The Beach People美国:澳洲海滨奢华品牌
2018/07/05 全球购物
美国现代家具购物网站:LexMod
2019/01/09 全球购物
数控技术与应用毕业生自荐信
2013/09/24 职场文书
大学生简历求职信
2014/06/24 职场文书
机关干部三严三实心得体会
2014/10/13 职场文书
《画家和牧童》教学反思
2016/02/17 职场文书
Spring Boot两种全局配置和两种注解的操作方法
2021/06/29 Java/Android
MySQL深度分页(千万级数据量如何快速分页)
2021/07/25 MySQL
详解pytorch创建tensor函数
2022/03/22 Python