CakeFest 2024: The Official CakePHP Conference

IntlCalendar::set

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

IntlCalendar::setEstablecer un campo de instante o varios campos en común de una vez

Descripción

Estilo orientado a objetos

public IntlCalendar::set(int $field, int $value): bool
public IntlCalendar::set(
    int $year,
    int $month,
    int $dayOfMonth = NULL,
    int $hour = NULL,
    int $minute = NULL,
    int $second = NULL
): bool

Estilo por procedimientos

intlcal_set(IntlCalendar $cal, int $field, int $value): bool
intlcal_set(
    IntlCalendar $cal,
    int $year,
    int $month,
    int $dayOfMonth = NULL,
    int $hour = NULL,
    int $minute = NULL,
    int $second = NULL
): bool

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

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top