在PHP中,可以使用DateTime
類和DateInterval
類來處理日期和時間。當需要對日期時間進行四舍五入時,可以使用以下方法:
modify()
方法:$date = new DateTime('2021-10-01 12:34:56');
$roundedDate = clone $date;
// 四舍五入到最接近的整數分鐘
$roundedDate->modify(sprintf('%d minutes', round($date->format('i'))));
echo $roundedDate->format('Y-m-d H:i:s'); // 輸出:2021-10-01 12:30:00
add()
和sub()
方法:$date = new DateTime('2021-10-01 12:34:56');
// 四舍五入到最接近的整數分鐘
$minutes = round($date->format('i'));
$roundedMinutes = $minutes >= 30 ? $minutes - 30 : $minutes + 30;
$roundedDate = clone $date;
$roundedDate->modify(sprintf('%d minutes', $roundedMinutes));
echo $roundedDate->format('Y-m-d H:i:s'); // 輸出:2021-10-01 12:30:00
DateInterval
對象:$date = new DateTime('2021-10-01 12:34:56');
// 四舍五入到最接近的整數分鐘
$interval = new DateInterval('P1M');
$roundedDate = clone $date;
$roundedDate->add($interval);
$minutes = round($date->format('i'));
$roundedMinutes = $minutes >= 30 ? $minutes - 30 : $minutes + 30;
$roundedDate->modify(sprintf('%d minutes', $roundedMinutes));
echo $roundedDate->format('Y-m-d H:i:s'); // 輸出:2021-10-01 12:30:00
這些方法可以根據需要進行調整,以便對日期時間的不同部分(如小時、天、月等)進行四舍五入。