IntlCalendar::roll
(PHP 5.5.0, PECL >= 3.0.0a1)
IntlCalendar::roll — Add value to field without carrying into more significant fields
Description
Adds a (signed) amount to a field. The difference with respect to IntlCalendar::add() is that when the field value overflows, it does not carry into more significant fields.
Liste de paramètres
-
field
-
Une constantes de champ date/heure IntlCalendar. Ceux sont des valeurs entières comprises entre 0 et
IntlCalendar::FIELD_COUNT
. -
amountOrUpOrDown
-
The (signed) amount to add to the field,
TRUE
for rolling up (adding 1), orFALSE
for rolling down (subtracting 1).
Valeurs de retour
Returns TRUE
on success or FALSE
on failure.
Exemples
Exemple #1 IntlCalendar::roll()
<?php ini_set('date.timezone', 'Europe/Lisbon'); ini_set('intl.default_locale', 'pt_PT'); $cal = new IntlGregorianCalendar(2013, 5 /* June */, 30); $cal->add(IntlCalendar::FIELD_DAY_OF_MONTH, 1); var_dump(IntlDateFormatter::formatObject($cal)); // "01/07/2013, 00:00:00" $cal->set(2013, 5 /* June */, 30); $cal->roll(IntlCalendar::FIELD_DAY_OF_MONTH, true); // roll up, same as rolling +1 var_dump(IntlDateFormatter::formatObject($cal)); // "01/06/2013, 00:00:00"
L'exemple ci-dessus va afficher :
string(20) "01/07/2013, 00:00:00" string(20) "01/06/2013, 00:00:00"
Voir aussi
- IntlCalendar::add() - Ajoute une durée (signée) à un champ
- IntlCalendar::set() - Set a time field or several common fields at once