PHP时间格式美化

PHP美化时间格式
众所周知,默认的时间格式都不怎么好看,有点占地方,而看起来比较费尽,下面就分享一个美化时间的函数。

<?php
//时间美化函数
/*
* Beautifytime() 时间美化函数
* $strArr    字符串或数组
* $style    样式,1(**秒前)、2(年月日)、3(02014-5-26)、4(2014-5-26 17:22:32)
* $dArr    额外的时间字段(数组形式,如:array('aaa','bbbb'))
*/
function Beautifytime($strArr, $style = 1, $dArr = '') {
    $style = intval($style);
    //判断是否是数组
    if (is_array($strArr)) {
        for ($i = 0; $i < count($strArr); $i++) {
            if ($strArr[$i]['add_time']) {
                 $strArr[$i]['datetime'] = btime($strArr[$i]['add_time'], $style);
            }
           //判断是否有额外的时间字段
           if (is_array($dArr)) {
                for ($j = 0; $j < count($dArr); $j++) {
                $strArr[$i][$dArr[$j]] = btime($strArr[$i][$dArr[$j]], $style);
                }
           }
        }
    }else {
         btime($strArr, $style);
    }
    return $strArr;
}
function btime($dateTime, $style) {
    $timename = '';
    switch ($style) {
         case ($style == 1):
             $betime = time() - $dateTime;
             switch($betime) {
             case ($betime < 60):
                 $timename = floor($betime).'秒前';
                 break;
             case ($betime < 3600 && $betime > 60):
                 $timename = floor(($betime/60)).'分钟前';
                 break;
             case ($betime < 86400 && $betime > 3600):
                 $timename = floor(($betime/60/60)).'小时前';
                 break;
             case ($betime < 2592000 && $betime > 86400):
                 $timename = floor(($betime/60/60/30)).'天前';
                 break;
             case ($betime < 31536000 && $betime > 2592000):
                 $timename = floor(($betime/60/60/30/12)).'个月前';
                 break;
             case ($betime < 3153600000 && $betime > 31536000):
                 $timename = floor(($betime/60/60/30/12/12)).'年前';
             break;
             }
         break;
         case ($style == 2):
             $timename = date('Y年m月d日', $dateTime);
             break;
         case ($style == 3):
             $timename = date('Y-m-d', $dateTime);
             break;
         case ($style == 4):
             $timename = date('Y-m-d H:i:s', $dateTime);
             break;
        }
    return $timename;
}
echo Beautifytime(time(), 2);
?>
分享到:
标签:php时间,PHP美化时间,时间格式,
^_^ 亲爱的客官,如果您觉得本文对您有好处,请移动你的鼠标点点下面的广告或上面的或右上角的,非常感谢~ ^_^

PHP时间格式美化:目前有4 条留言

  1. 板凳
    小二苘:

    学习了

    2014-04-01 上午 10:46
    • 苘苘啊,你会代码么?

      2014-04-01 下午 6:48
      • 我猜应该是会的

        2014-04-01 下午 6:50
  2. 沙发
    一指流沙:

    这个必须得收了..非常有用的…

    2014-03-28 上午 9:45