(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a1)
IntlCalendar::add — 将一个(带符号的)时间量添加到字段中
面向对象风格
过程式风格
将一个带符号的量添加到字段中。添加一个正数允许时间前进,即使字段的数值减少(例如,在处理公元前日期的年份时)。
其他字段可能需要调整 - 例如,在 1 月 31 日添加一个月将导致 2 月 28 日(或 29 日)。与 IntlCalendar::roll() 相反,当值循环时,更重要的字段可能会改变。例如,在 1 月 31 日添加一天将导致 2 月 1 日,而不是 1 月 1 日。
calendar
一个 IntlCalendar 实例。
field
一个 IntlCalendar 日期/时间 字段常量。这些是介于 0
和 IntlCalendar::FIELD_COUNT
之间的整数值。
value
要添加到当前字段的带符号的量。如果该量为正,则时间将向前移动;如果该量为负,则时间将向过去移动。单位隐含于字段类型。例如,对于 IntlCalendar::FIELD_HOUR_OF_DAY
,单位为小时。
示例 #1 IntlCalendar::add()
<?php
ini_set('intl.default_locale', 'fr_FR');
ini_set('date.timezone', 'UTC');
$cal = new IntlGregorianCalendar(2012, 0 /* January */, 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