php友好格式化时间
2015-08-15 23:57
671 查看
/** * 友好格式化时间 * @param int $timestamp 时间 * @param array $formats * @return string */ public static function formatDateTime($timestamp, $formats = null) { if ($formats == null) { $formats = array( 'DAY' => '%s天前', 'DAY_HOUR' => '%s天%s小时前', 'HOUR' => '%s小时', 'HOUR_MINUTE' => '%s小时%s分前', 'MINUTE' => '%s分钟前', 'MINUTE_SECOND' => '%s分钟%s秒前', 'SECOND' => '%s秒前', ); } /* 计算出时间差 */ $seconds = time() - $timestamp; $minutes = floor($seconds / 60); $hours = floor($minutes / 60); $days = floor($hours / 24); if ($days > 0 && $days < 31) { $diffFormat = 'DAY'; } elseif($days == 0) { $diffFormat = ($hours > 0) ? 'HOUR' : 'MINUTE'; if ($diffFormat == 'HOUR') { $diffFormat .= ($minutes > 0 && ($minutes - $hours * 60) > 0) ? '_MINUTE' : ''; } else { $diffFormat = (($seconds - $minutes * 60) > 0 && $minutes > 0) ? $diffFormat.'_SECOND' : 'SECOND'; } }else{ $diffFormat = 'TURE_DATE_TIME';//超出30天, 正常时间显示 } $dateDiff = null; switch ($diffFormat) { case 'DAY': $dateDiff = sprintf($formats[$diffFormat], $days); break; case 'DAY_HOUR': $dateDiff = sprintf($formats[$diffFormat], $days, $hours - $days * 60); break; case 'HOUR': $dateDiff = sprintf($formats[$diffFormat], $hours); break; case 'HOUR_MINUTE': $dateDiff = sprintf($formats[$diffFormat], $hours, $minutes - $hours * 60); break; case 'MINUTE': $dateDiff = sprintf($formats[$diffFormat], $minutes); break; case 'MINUTE_SECOND': $dateDiff = sprintf($formats[$diffFormat], $minutes, $seconds - $minutes * 60); break; case 'SECOND': $dateDiff = sprintf($formats[$diffFormat], $seconds); break; default: $dateDiff = date('Y-m-d H:i:s'); } return $dateDiff; }
相关文章推荐
- PHP学习笔记-非常有用的 PHP 代码片段(1)
- JS/PHP 浮点数精确运算
- phpcms学习总结-图片上传不成功
- Zend Studio快捷键汇总
- php des 加密解密实例
- php函数设置时区方法:
- PHP 实现获取服务器端IP地址
- 如何安装PHP扩展libzookeeper
- 如何让PHP脚本在cli模式下执行时可接受选项和值的输入
- PHP:文件系统
- php中UNIX时间戳转换为日期
- IIS 7上部署PHP
- phpmailer 实现发送邮件
- yii2 直接输出model的(active record)sql语句
- php xdebug工具的使用语法
- laravel (5.1) & Ember.js (1.13.0) 的整合
- 关于PHP fopen函数在windows系统上创建中文命名的文档时乱码的问题
- 纯js文件中向php传送json格式数据
- 200行代码搞定炸金花游戏(PHP版)
- mac os下php安装mcrypt扩展