php 时间向上取整和向下取整

问题描述 投票:0回答:1

我正在使用以下函数将时间四舍五入到最接近的 15 分钟。

function roundTime($time){

    $seconds = $time;
    $rounded_seconds = round($seconds / (15 * 60)) * (15 * 60);

    return date('H:i', $rounded_seconds) . "\n";
    
}

我真正需要的是它能够向下舍入和向上舍入到最接近的 15 分钟和 30 分钟。

搜索向上/向下舍入后,我知道函数floorceil,但我不明白如何随着时间的推移使用它们?

php datetime time rounding
1个回答
0
投票

您想要四舍五入到最接近的一刻钟。因此:


function roundTime($seconds){

    $minutes = $seconds / 60;
    $hours = $minutes / 60;
    $rounded_hours =  round($hours * 4) / 4;

    return date('H:i', $rounded_hours * 60 * 60) . "\n";
}

$time =  time();
echo roundTime($time);
© www.soinside.com 2019 - 2024. All rights reserved.