IntlCalendar::getSkippedWallTimeOption
(PHP 5.5.0, PECL >= 3.0.0a1)
IntlCalendar::getSkippedWallTimeOption — Obtener el comportamiento para tratar horas omitidas
Descripción
Estilo orientado a objetos
Estilo por procedimientos
Obtiene la estrategia actual para tratar con horas omitidassiempre que el
reloj se adelante durante las transiciones del inicio del horario de verano (DST).
El valor predeterminado es IntlCalendar::WALLTIME_LAST.
El calendario debe ser tolerante para que esta opción tenga efecto, si no, el intento de establecer un instante no existente provocará un error.
Esta función requiere ICU 4.9 o posterior.
Parámetros
-
cal -
El recurso IntlCalendar.
Valores devueltos
Una de las constantes IntlCalendar::WALLTIME_FIRST,
IntlCalendar::WALLTIME_LAST o
IntlCalendar::WALLTIME_NEXT_VALID.
Ejemplos
Ejemplo #1 IntlCalendar::getSkippedWallTimeOption()
<?php
ini_set('date.timezone', 'Europe/Lisbon');
ini_set('intl.default_locale', 'en_US');
ini_set('intl.error_level', E_WARNING);
// El 31 de marzo a las 0100, el reloj se adelanta 1 hora y se cambia de GMT+00 a GMT+01
$cal = new IntlGregorianCalendar(2013, 2 /* March */, 31, 1, 30);
var_dump(
$cal->isLenient(), // true
$cal->getSkippedWalltimeOption() // 0 WALLTIME_LAST
);
$formateador = IntlDateFormatter::create(
NULL,
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'UTC'
);
var_dump($formateador->format($cal->getTime() / 1000));
$cal->setSkippedWallTimeOption(IntlCalendar::WALLTIME_FIRST);
var_dump($cal->getSkippedWalltimeOption()); // 1 WALLTIME_FIRST
$cal->set(IntlCalendar::FIELD_HOUR_OF_DAY, 1);
var_dump($formateador->format($cal->getTime() / 1000));
$cal->setSkippedWallTimeOption(IntlCalendar::WALLTIME_NEXT_VALID);
var_dump($cal->getSkippedWalltimeOption()); // 2 WALLTIME_NEXT_VALID
$cal->set(IntlCalendar::FIELD_HOUR_OF_DAY, 1);
var_dump($formateador->format($cal->getTime() / 1000));
El resultado del ejemplo sería:
bool(true) int(0) string(40) "Sunday, March 31, 2013 at 1:30:00 AM GMT" int(1) string(41) "Sunday, March 31, 2013 at 12:30:00 AM GMT" int(2) string(40) "Sunday, March 31, 2013 at 1:00:00 AM GMT"
Ver también
- IntlCalendar::getRepeatedWallTimeOption() - Obtener el comportamiento para tratar horas repetidas
- IntlCalendar::setSkippedWallTimeOption() - Establecer el comportamiento para tratar horas omitidas en transiciones positivas de índices de zonas horarias
- IntlCalendar::setRepeatedWallTimeOption() - Establecer el comportamiento para tratar horas repetidas en transiciones negativas de índices de zonas horarias