# IntlCalendar::add

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

IntlCalendar::add — Añadir una candidad (con signo) de tiempo al campo

### Descripción

Estilo orientado a objetos

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

Estilo por procedimientos

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

Añade una cantidad con signo a un campo. Una cantidad positiva permite avanzar el tiempo, incluso si el valor numérico del campo decrementa (p.ej., al trabajar con años en fechas AC).

Podría ser necesario ajustar otros campos – por ejemplo, añadir un mes al 31 de enero resultará en el 28 (o 29) de febrero. Al contrario que IntlCalendar::roll(), cuando un valor envuelve, podrían cambiar significativamente más campos. Por ejemplo, añadir un día al 31 de enero resultará en el 1 de febrero, no en el 1 de enero.

### Parámetros

`cal`

  El recurso IntlCalendar.

`field`

  Una de las constantes del campo fecha/hora de IntlCalendar. Son valores de tipo integer entre `0` y `IntlCalendar::FIELD_COUNT`.

`amount`

  La cantidad con signo a añadir al campo actual. Si la cantidad es positiva, el instante avanzará; si es negativa, el instante retrocederá. La unidad está implícita en el tipo de campo. Por ejemplo, horas para `IntlCalendar::FIELD_HOUR_OF_DAY`.

### Valores devueltos

Devuelve `true` en caso de éxito o `false` en caso de error.

### Ejemplos

Ejemplo #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";`

El resultado del ejemplo sería:

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