• 展开微博窗口
  • QQ:365182575
  • 微信:cighsen
  • 展开分类目录
Nearnet

php快速计算倒计时并格式化

/**
 * 倒计时 
 * 如:2年7个月2星期3天23小时58分钟44秒
 * 2021.10.09 cighsen02 365182575
 */
function twoirFinishTime($time){

    $t = $time - $_SERVER['REQUEST_TIME'];

    $f = array(
        31536000=>'年',
        2592000    =>'个月',
        604800    =>'星期',
        86400    =>'天',
        3600    =>'小时',
        60        =>'分钟',
        1        =>'秒'
    );
    $str = '';
    foreach ($f as $k => $v) {
        if (0 != $c = floor($t / $k)) {
            
            $t = $t % $k;
            $str .= $c . $v;
        }
    }
    
    return $str;
}

实例说明:

 * 全显示: 2年7个月2星期3天23小时56分钟14秒
 * 设置如下:
 * $f = array(
 *         31536000=>'年',
 *         2592000    =>'个月',
 *        604800    =>'星期',
 *         86400    =>'天',
 *        3600    =>'小时',
 *        60        =>'分钟',
 *        1        =>'秒'
 * );

 * 星期不显示: 2年7个月17天23小时56分钟14秒
 * 设置如下:
 * $f = array(
 *         31536000=>'年',
 *         2592000    =>'个月',
 *         86400    =>'天',
 *        3600    =>'小时',
 *        60        =>'分钟',
 *        1        =>'秒'
 * );

 * 年和星期不显示:31个月27天23小时56分钟14秒
 * 设置如下:
 * $f = array(
 *         2592000    =>'个月',
 *         86400    =>'天',
 *        3600    =>'小时',
 *        60        =>'分钟',
 *        1        =>'秒'
 * );

码字很辛苦,转载请注明来自NAERENET《php快速计算倒计时并格式化》