网站首页文章详情

[php]计算给定的秒数距离当前时间多久

发布时间:2015-02-13 10:09编辑:胜男

计算给定的秒数距离当前时间多久

/**
 * 计算给定的秒数距离当前时间多久
 * @param int $timestamp
 *  秒数,通常是当前时间减去另一个时间
 * @param int $granularity
 *  显示层级,默认为 年 周 天 小时 分钟 秒
 * @return string
 */
function format_interval($timestamp, $granularity = 5) {
  $units = array(
    31536000 => t('system', '年'), 
    604800 => t('system', '周'), 
    86400 => t('system', '天'),
    3600 => t('system', '小时'),
    60 => t('system', '分钟'),
    1 => t('system', '秒')
  );
  $output = '';
  foreach ($units as $key => $value) {
    if ($timestamp >= $key) {
      $output .= floor($timestamp / $key) . $value;
      $timestamp %= $key;
      $granularity--;
    }
    if ($granularity == 0) {
      break;
    }
  }
  return $output ? $output : t('system', '0 秒');
}