IntlCalendar::set
(PHP 5.5.0, PECL >= 3.0.0a1)
IntlCalendar::set — Establecer un campo de instante o varios campos en común de una vez
Descripción
Estilo orientado a objetos
$field
, int $value
)$year
, int $month
[, int $dayOfMonth = NULL
[, int $hour = NULL
[, int $minute = NULL
[, int $second = NULL
]]]] )Estilo por procedimientos
$cal
, int $year
, int $month
[, int $dayOfMonth = NULL
[, int $hour = NULL
[, int $minute = NULL
[, int $second = NULL
]]]] )Establece un campo al valor dado o varion campos en común de una vez. El rango de valores que se aceptan dependen de si el calendario está empleando el modo tolerante.
Para campos que entren en conflicto, los campos que se establezcan después tienen prioridad.
Este método no se puede invocar con exactamente cuatro argumentos.
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. -
value -
El nuevo valor para el campo dado.
-
year -
El nuevo valor para
IntlCalendar::FIELD_YEAR. -
month -
El nuevo valor para
IntlCalendar::FIELD_MONTH. -
dayOfMonth -
El nuevo valor para
IntlCalendar::FIELD_DAY_OF_MONTH. La secuencia de meses empieza en cero, es decir, enero está representado por 0, febrero por 1, …, diciembre es 11 y undiciembre (si el calendario lo posee) es 12. -
hour -
El nuevo valor para
IntlCalendar::FIELD_HOUR_OF_DAY. -
minute -
El nuevo valor para
IntlCalendar::FIELD_MINUTE. -
second -
El nuevo valor para
IntlCalendar::FIELD_SECOND.
Valores devueltos
Devuelve TRUE en caso de éxito, FALSE en caso de error.
Ejemplos
Ejemplo #1 IntlCalendar::set()
<?php
ini_set('date.timezone', 'Europe/Lisbon');
ini_set('intl.default_locale', 'pt_PT');
// Las llamadas realizadas después tienen prioridad
$cal = new IntlGregorianCalendar(2013, 6 /* July */, 1);
$cal->set(IntlCalendar::FIELD_YEAR, 2012);
$cal->set(IntlCalendar::FIELD_EXTENDED_YEAR, 2011);
var_dump(IntlDateFormatter::formatObject($cal));
$cal = new IntlGregorianCalendar(2013, 6 /* July */, 1);
$cal->set(IntlCalendar::FIELD_YEAR, 2012);
$cal->set(IntlCalendar::FIELD_EXTENDED_YEAR, 2011);
// La hora aún no se ha recalculado. Si limpiamos el año ampliado,
// se empleará el año establecido antes
$cal->clear(IntlCalendar::FIELD_EXTENDED_YEAR);
var_dump(IntlDateFormatter::formatObject($cal));
El resultado del ejemplo sería:
string(20) "01/07/2011, 00:00:00" string(20) "01/07/2012, 00:00:00"
Ver también
- IntlCalendar::get() - Obtiene el valor de un campo
- IntlCalendar::add() - Añadir una candidad (con signo) de tiempo al campo
- IntlCalendar::roll() - Añadir un valor a un campo si acarrear más campos significativos