使用 PHP Datetime Format 計算多久以前的時間

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'); // +2 days
?>
<?php
$datetime1 = date_create('2020-10-11');
$datetime2 = date_create('2020-10-13');
$interval = date_diff($datetime1, $datetime2);
echo $interval->format('%R%a days'); // +2 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'); // +2 days
echo $interval->format("%H:%I:%S (Full days: %a)"), "\n"; // 11:11:05 (Full days: 2)
?>

作者: Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料