PHP Conference Japan 2024

IntlCalendar::add

(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a1)

IntlCalendar::add新增一段時間(含正負號)到一個欄位

說明

物件導向風格

public IntlCalendar::add(int $field, int $value): bool

程序式風格

intlcal_add(IntlCalendar $calendar, int $field, int $value): bool

將一個帶正負號的量添加到一個欄位。即使欄位的數值減小(例如,處理公元前的年份時),添加正數也能夠推進時間。

其他欄位可能需要調整——例如,將一個月添加到 1 月 31 日將會得到 2 月 28 日(或 29 日)。與 IntlCalendar::roll() 不同,當一個值循環時,更重要的欄位可能會改變。例如,將一天添加到 1 月 31 日將會得到 2 月 1 日,而不是 1 月 1 日。

參數

calendar

一個 IntlCalendar 實例。

field

IntlCalendar 日期/時間 欄位常數 之一。這些是介於 0IntlCalendar::FIELD_COUNT 之間的整數值。

value

要添加到目前欄位的帶正負號的量。如果該量為正數,則時間點將會向前移動;如果為負數,則時間點將會向後移動。單位隱含在欄位類型中。例如,IntlCalendar::FIELD_HOUR_OF_DAY 的小時。

返回值

成功時返回 true,失敗時返回 false

範例

範例 #1 IntlCalendar::add()

<?php
ini_set
('intl.default_locale', 'fr_FR');
ini_set('date.timezone', 'UTC');

$cal = new IntlGregorianCalendar(2012, 0 /* 一月 */, 31);
echo
IntlDateFormatter::formatObject($cal), "\n";

$cal->add(IntlCalendar::FIELD_MONTH, 1);
echo
IntlDateFormatter::formatObject($cal), "\n";

$cal->add(IntlCalendar::FIELD_DAY_OF_MONTH, 1);
echo
IntlDateFormatter::formatObject($cal), "\n";

以上範例將輸出:

31 janv. 2012 00:00:00
29 févr. 2012 00:00:00
1 mars 2012 00:00:00

新增註記

使用者貢獻的註記

此頁面沒有使用者貢獻的註記。
To Top