©
本文档使用 PHP中文网手册 发布
(PHP 5.5.0, PECL >= 3.0.0a1)
IntlCalendar::add — Add a (signed) amount of time to a field
面向对象风格
$field
, int $amount
)过程化风格
$cal
, int $field
, int $amount
)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
One of the IntlCalendar date/time field constants. These are integer
values between 0 and
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
.
Example #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