查詢

DateTimeInterface::diff()函式—用法及示例

「 計算兩個日期之間的差異,並返回一個 DateInterval 物件 」


PHP函式: DateTimeInterface::diff()

函式描述: DateTimeInterface::diff() 函式用於計算兩個日期之間的差異,並返回一個 DateInterval 物件。

用法: 該函式需要一個 DateTimeInterface 物件作為引數,並返回一個 DateInterval 物件。

語法: DateTimeInterface::diff(DateTimeInterface $datetime2, bool $absolute = false): DateInterval

引數:

  • $datetime2: 一個 DateTimeInterface 物件,表示與當前日期進行比較的日期。
  • $absolute: 可選引數,用於確定返回的 DateInterval 物件是否包含負號。如果設為 true,返回的物件將總是正數。

返回值: 返回一個 DateInterval 物件,表示兩個日期之間的差異。

示例:

$datetime1 = new DateTime('2022-01-01 00:00:00');
$datetime2 = new DateTime('2022-01-02 12:00:00');

$interval = $datetime1->diff($datetime2);

echo $interval->format('%R%a days %H hours'); // 輸出: +1 days 12 hours

在上面的示例中,我們建立了兩個 DateTime 物件,並計算了它們之間的日期差異。然後,我們使用 format() 方法來以指定的格式輸出差異。其中 %R 表示正號或負號,%a 表示天數,%H 表示小時數。

注意:

  • DateTime::diff() 方法是在 PHP 5.3.0 版本中引入的,因此需要 PHP 5.3.0 或更高版本才能使用該函式。
  • DateTimeInterface 介面是在 PHP 5.5.0 版本中引入的,因此需要 PHP 5.5.0 或更高版本才能使用該介面。
  • 如果將 $absolute 引數設為 true,則返回的 DateInterval 物件的值總是為正數。如果設為 false 或不傳遞該引數,預設情況下計算的差異將反映在 DateInterval 物件中的正負號上。
補充糾錯
熱門PHP函式
分享連結