IntlCalendar::add

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

IntlCalendar::addAdd a (signed) amount of time to a field

説明

オブジェクト指向型

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

手続き型

intlcal_add ( IntlCalendar $cal , int $field , int $amount ) : bool

Add a signed amount to a field. Adding a positive amount allows advances in time, even if the numeric value of the field decreases (e.g. when working with years in BC dates).

Other fields may need to adjusted – for instance, adding a month to the 31st of January will result in the 28th (or 29th) of February. Contrary to IntlCalendar::roll(), when a value wraps around, more significant fields may change. For instance, adding a day to the 31st of January will result in the 1st of February, not the 1st of Janurary.

パラメータ

cal

The IntlCalendar resource.

field

IntlCalendar の日付/時刻 フィールド定数 のいずれか。 0 から IntlCalendar::FIELD_COUNT までの間の整数値です。

amount

The signed amount to add to the current field. If the amount is positive, the instant will be moved forward; if it is negative, the instant wil be moved into the past. The unit is implicit to the field type. For instance, hours for IntlCalendar::FIELD_HOUR_OF_DAY.

返り値

Returns TRUE on success失敗した場合に FALSE を返します.

例1 IntlCalendar::add()

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

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

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

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

上の例の出力は以下となります。

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