PHP 将秒转成距离当前多少天日分秒 (秒格式为天/小时/分钟/秒)

有时需要统计服务器的uptime,得到一般是秒或这毫秒的数据,需要转化成天
方法一:

  1. <?php echo intval($sys_info[‘sysinfo’][‘runtime’]/3600/24).’天’.date(‘H小时i分s秒’,$sys_info[‘sysinfo’][‘runtime’]);?>  

方法二:

  1. <?php  
  2.   
  3. /** 
  4.  * 计算给定的秒数距离当前时间多久(服务器运行时间,uptime) 
  5.  * @param int $timestamp 
  6.  *  秒数,通常是当前时间减去另一个时间 
  7.  * @param int $granularity 
  8.  *  显示级别,默认为 年 周 天 小时 分钟 秒 
  9.  * @return string 
  10.  */  
  11. function time_format_interval($timestamp$granularity = 5) {  
  12.     $units = array(  
  13.             31536000 =>  ‘年’,  
  14.             604800 => ‘周’,  
  15.             86400 => ‘天’,  
  16.             3600 =>  ‘小时’,  
  17.             60 =>  ‘分钟’,  
  18.             1 =>  ‘秒’  
  19.     );  
  20.   
  21.     $output = ;  
  22.   
  23.     foreach ($units as $key => $value) {  
  24.         if ($timestamp >= $key) {  
  25.             $output .= floor($timestamp / $key) . $value;  
  26.             $timestamp %= $key;  
  27.             $granularity–;  
  28.         }  
  29.         if ($granularity == 0) {  
  30.             break;  
  31.         }  
  32.     }  
  33.   
  34.     return $output ? $output : ‘0 秒’;  
  35. }  
  36.   
  37. echo time_format_interval($sys_info[‘sysinfo’][‘runtime’]);  
  38. ?>  

$sys_info[‘sysinfo’][‘runtime’] 获取的服务器的uptime.

未经允许不得转载:ganlei的个人博客 » PHP 将秒转成距离当前多少天日分秒 (秒格式为天/小时/分钟/秒)

赞 (1)
分享到:更多 ()