PHP 想要計算日期時間差距幾天、幾小時、幾秒等等,以前都是自己換算 timestamp 後,再來自己除,然後換算成天數、時分秒等等。
現在 PHP DateTime 的物件,可以直接使用 format() 來輸出這些格式,省掉自己算的工~
使用 PHP Datetime Format 計算多久以前的時間
PHP 可以使用 DateTime() 的物件,然後搭配 diff()、format() 來輸出結果。
不想使用 DateTime() 物件,也可以直接使用 date_create()、date_diff() 來操作。
官方文件可見
範例
<?php
$datetime1 = new DateTime('2020-10-11');
$datetime2 = new DateTime('2020-10-13');
$interval = $datetime1->diff($datetime2);
echo $interval->format('%R%a days');
?>
<?php
$interval = date_diff($datetime1, $datetime2);
echo $interval->format('%R%a days');
?>
<?php
$datetime1 = new DateTime('2020-10-11 11:11:20');
$datetime2 = new DateTime('2020-10-13 22:22:25');
$interval = $datetime1->diff($datetime2);
echo $interval->format('%R%a days');
echo $interval->format("%H:%I:%S (Full days: %a)"), "\n";
?>
相關
PHP 輸入日期、時間, 要自動轉換成星期幾, 可以用 strtotime() + date(), …
在「Programming」中
2038年是很多系統都會遇到的問題(於 2038年1月19日3時14分07秒 會跳回 1970 或其…
在「Programming」中
2014-06-22 ~ 2014-06-25, 要列出這段區間的詳細日期有哪些? ex: 列出 2…
在「Programming」中