intl
PHP Manual

La clase IntlCalendar

(PHP 5.5.0, PECL >= 3.0.0a1)

Introducción

Sinopsis de la Clase

IntlCalendar {
/* Constantes */
const integer FIELD_ERA = 0 ;
const integer FIELD_YEAR = 1 ;
const integer FIELD_MONTH = 2 ;
const integer FIELD_WEEK_OF_YEAR = 3 ;
const integer FIELD_WEEK_OF_MONTH = 4 ;
const integer FIELD_DATE = 5 ;
const integer FIELD_DAY_OF_YEAR = 6 ;
const integer FIELD_DAY_OF_WEEK = 7 ;
const integer FIELD_DAY_OF_WEEK_IN_MONTH = 8 ;
const integer FIELD_AM_PM = 9 ;
const integer FIELD_HOUR = 10 ;
const integer FIELD_HOUR_OF_DAY = 11 ;
const integer FIELD_MINUTE = 12 ;
const integer FIELD_SECOND = 13 ;
const integer FIELD_MILLISECOND = 14 ;
const integer FIELD_ZONE_OFFSET = 15 ;
const integer FIELD_DST_OFFSET = 16 ;
const integer FIELD_YEAR_WOY = 17 ;
const integer FIELD_DOW_LOCAL = 18 ;
const integer FIELD_EXTENDED_YEAR = 19 ;
const integer FIELD_JULIAN_DAY = 20 ;
const integer FIELD_MILLISECONDS_IN_DAY = 21 ;
const integer FIELD_IS_LEAP_MONTH = 22 ;
const integer FIELD_FIELD_COUNT = 23 ;
const integer FIELD_DAY_OF_MONTH = 5 ;
const integer DOW_SUNDAY = 1 ;
const integer DOW_MONDAY = 2 ;
const integer DOW_TUESDAY = 3 ;
const integer DOW_WEDNESDAY = 4 ;
const integer DOW_THURSDAY = 5 ;
const integer DOW_FRIDAY = 6 ;
const integer DOW_SATURDAY = 7 ;
const integer DOW_TYPE_WEEKDAY = 0 ;
const integer DOW_TYPE_WEEKEND = 1 ;
const integer DOW_TYPE_WEEKEND_OFFSET = 2 ;
const integer DOW_TYPE_WEEKEND_CEASE = 3 ;
const integer WALLTIME_FIRST = 1 ;
const integer WALLTIME_LAST = 0 ;
const integer WALLTIME_NEXT_VALID = 2 ;
/* Métodos */
public bool add ( int $field , int $amount )
bool intlcal_add ( IntlCalendar $cal , int $field , int $amount )
public bool after ( IntlCalendar $other )
bool intlcal_after ( IntlCalendar $cal , IntlCalendar $other )
public bool before ( IntlCalendar $other )
bool intlcal_before ( IntlCalendar $cal , IntlCalendar $other )
public bool clear ([ int $field = NULL ] )
bool intlcal_clear ( IntlCalendar $cal [, int $field = NULL ] )
private __construct ( void )
public static IntlCalendar createInstance ([ mixed $timeZone = NULL [, string $locale = "" ]] )
IntlCalendar intlcal_create_instance ([ mixed $timeZone = NULL [, string $locale = "" ]] )
public bool equals ( IntlCalendar $other )
bool intlcal_equals ( IntlCalendar $cal , IntlCalendar $other )
public int fieldDifference ( float $when , int $field )
int intlcal_field_difference ( IntlCalendar $cal , float $when , int $field )
public static IntlCalendar fromDateTime ( mixed $dateTime )
IntlCalendar intlcal_from_date_time ( mixed $dateTime )
public int get ( int $field )
int intlcal_get ( IntlCalendar> $cal , int $field )
public int getActualMaximum ( int $field )
int intlcal_get_actual_maximum ( IntlCalendar $cal , int $field )
public int getActualMinimum ( int $field )
int intlcal_get_actual_minimum ( IntlCalendar $cal , int $field )
public static array getAvailableLocales ( void )
array intlcal_get_available_locales ( void )
public int getDayOfWeekType ( int $dayOfWeek )
int intlcal_get_day_of_week_type ( IntlCalendar $cal , int $dayOfWeek )
public int getErrorCode ( void )
public string getErrorMessage ( void )
public int getFirstDayOfWeek ( void )
int intlcal_get_first_day_of_week ( IntlCalendar $cal )
public int getGreatestMinimum ( int $field )
int intlcal_get_greatest_minimum ( IntlCalendar $cal , int $field )
public static Iterator getKeywordValuesForLocale ( string $key , string $locale , boolean $commonlyUsed )
Iterator intlcal_get_keyword_values_for_locale ( string $key , string $locale , boolean $commonlyUsed )
public int getLeastMaximum ( int $field )
int intlcal_get_least_maximum ( IntlCalendar $cal , int $field )
public string getLocale ( int $localeType )
string intlcal_get_locale ( IntlCalendar $cal , int $localeType )
public int getMaximum ( int $field )
int intlcal_get_maximum ( IntlCalendar $cal , int $field )
public int getMinimalDaysInFirstWeek ( void )
int intlcal_get_minimal_days_in_first_week ( IntlCalendar $cal )
public int getMinimum ( int $field )
int intlcal_get_minimum ( IntlCalendar $cal , int $field )
public static float getNow ( void )
float intlcal_get_now ( void )
public int getRepeatedWallTimeOption ( void )
int intlcal_get_repeated_wall_time_option ( IntlCalendar $cal )
public int getSkippedWallTimeOption ( void )
int intlcal_get_skipped_wall_time_option ( IntlCalendar $cal )
public float getTime ( void )
float intlcal_get_time ( IntlCalendar $cal )
public IntlTimeZone getTimeZone ( void )
IntlTimeZone intlcal_get_time_zone ( IntlCalendar $cal )
public string getType ( void )
string intlcal_get_type ( IntlCalendar $cal )
public int getWeekendTransition ( string $dayOfWeek )
int intlcal_get_weekend_transition ( IntlCalendar $cal , string $dayOfWeek )
public bool inDaylightTime ( void )
bool intlcal_in_daylight_time ( IntlCalendar $cal )
public bool isEquivalentTo ( IntlCalendar $other )
bool intlcal_is_equivalent_to ( IntlCalendar $cal , IntlCalendar $other )
public bool isLenient ( void )
bool intlcal_is_lenient ( IntlCalendar $cal )
public bool isSet ( int $field )
bool intlcal_is_set ( IntlCalendar $cal , int $field )
public bool isWeekend ([ float $date = NULL ] )
bool intlcal_is_weekend ( IntlCalendar $cal [, float $date = NULL ] )
public bool roll ( int $field , mixed $amountOrUpOrDown )
bool intlcal_roll ( IntlCalendar $cal , int $field , mixed $amountOrUpOrDown )
public bool set ( int $field , int $value )
public bool set ( int $year , int $month [, int $dayOfMonth = NULL [, int $hour = NULL [, int $minute = NULL [, int $second = NULL ]]]] )
bool 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 ]]]] )
public bool setFirstDayOfWeek ( int $dayOfWeek )
bool intlcal_set_first_day_of_week ( IntlCalendar $cal , int $dayOfWeek )
public ReturnType setLenient ( string $isLenient )
ReturnType intlcal_set_lenient ( IntlCalendar $cal , string $isLenient )
public bool setMinimalDaysInFirstWeek ( int $minimalDays )
bool intlcal_get_minimal_days_in_first_week ( IntlCalendar $cal , int $minimalDays )
public bool setRepeatedWallTimeOption ( int $wallTimeOption )
bool intlcal_set_repeated_wall_time_option ( IntlCalendar $cal , int $wallTimeOption )
public bool setSkippedWallTimeOption ( int $wallTimeOption )
bool intlcal_set_skipped_wall_time_option ( IntlCalendar $cal , int $wallTimeOption )
public bool setTime ( float $date )
bool intlcal_set_time ( IntlCalendar $cal , float $date )
public bool setTimeZone ( mixed $timeZone )
bool intlcal_set_time_zone ( IntlCalendar $cal , mixed $timeZone )
public DateTime toDateTime ( void )
DateTime intlcal_to_date_time ( IntlCalendar $cal )
}

Constantes predefinidas

IntlCalendar::FIELD_ERA

Campo de calendario que representa numéricamente una era, por ejemplo 1 para DC y 0 para AC en los calendarios Gregoriano/Juliano, y 235 para la era Heisei (平成) en el calendario japonés. No todos los calendarios tienen más de una era.

IntlCalendar::FIELD_YEAR

Campo de calendario para el año. No es único a lo largo de las eras. Si el tipo de calendario tiene más de una era, generalmente el valor mínimo para este campo será 1.

IntlCalendar::FIELD_MONTH

Campo de calendario para el mes. La secuecia de meses está basada en cero, por lo que Enero (aquí suele significar el primer mes del calendario; este podría llamarse de otra manera, como Muharram en el calendario islámico) se representa por 0, Febrero por 1, …, Diciembre por 11 y, para calendarios que lo tengan, el 13º o mes bisiesto por 12.

IntlCalendar::FIELD_WEEK_OF_YEAR

Campo de calendario para el número de la semana del año. Depende de qué día de la semana se considera que inicia la semana y el número mínimo de días de una semana.

IntlCalendar::FIELD_WEEK_OF_MONTH

Campo de calendario para el número de la semana del mes. Depende de qué día de la semana se considra que inicia la semana y el número mínimo de días de una semana.

IntlCalendar::FIELD_DATE

Campo de calendario para el día del mes. Lo mismo que IntlCalendar::FIELD_DAY_OF_MONTH, el cual tiene un nombre más claro.

IntlCalendar::FIELD_DAY_OF_YEAR

Campo de calendario para el día del año. Para el calendario Gregoriano, comienza con 1 y finaliza con 365 o 366.

IntlCalendar::FIELD_DAY_OF_WEEK

Campo de calendario para el día de la semana. Su valor empiaza con 1 (Domingo, véase IntlCalendar::DOW_SUNDAY y constantes subsiguientes) y el último valor válido es 7 (Sábado).

IntlCalendar::FIELD_DAY_OF_WEEK_IN_MONTH

Dado un día de la semana (Domingo, Lunes, …), este campo de calendario asigna un ordinal para tal día de la semana de un mes específico. Así, si el valor de este campo es 1 y el valor del día de la semana es 2 (Lunes), el día establecido del mes es el 1er lunes del mes; el valor máximo es 5.

Además, el valor 0 y los valores negativos también están permitidos. El valor 0 abarca los siete días que acontecen inmediatamente antes de los primeros siete días de un mes (el cual tiene por lo tanto un ‘día de la semana del mes’ con valor 1). Los valores negativos inician la cuenta desde el final del mes – -1 apunta a la última aparición de un día de la semana en un mes, -2 al penúltimo, etc.

A diferencia de IntlCalendar::FIELD_WEEK_OF_MONTH y IntlCalendar::FIELD_WEEK_OF_YEAR, este valor no depende de IntlCalendar::getFirstDayOfWeek() o IntlCalendar::getMinimalDaysInFirstWeek(). El primer lunes es el primer lunes, incluso si sucede en una semana que pertenece al mes anterior.

IntlCalendar::FIELD_AM_PM

Campo de calendario que indica si una hora es anterior al mediodía (valor 0, AM) o posterior (1). Medianoche es AM, mediodía es PM.

IntlCalendar::FIELD_HOUR

Campo de calendario para la hora, sin especificar si es por la mañana o por la tarde. Los valores válidos son de 0 a 11.

IntlCalendar::FIELD_HOUR_OF_DAY

Campo de calendario para la hora completa (24h) de un día. Los valores válidos son de 0 a 23.

IntlCalendar::FIELD_MINUTE

Campo de calendario para el componente minutos de la hora.

IntlCalendar::FIELD_SECOND

Campo de calendario para el componente segundos de la hora.

IntlCalendar::FIELD_MILLISECOND

Campo de calendario para el componente milisegundos de la hora.

IntlCalendar::FIELD_ZONE_OFFSET

Campo de calendario que indica el índice puro de la zona horaria, en milisegundos. El índice puro es el índice de la zona horaria, excluyendo cualquier índice debido a las horas de horario de verano.

IntlCalendar::FIELD_DST_OFFSET

Campo de calendario para el índice del horario de verano de la zona horaria del calendario, en milisegundos, si está activo para la hora del calendario.

IntlCalendar::FIELD_YEAR_WOY

Campo de calendario que representa el año para propósitos de semana del año.

IntlCalendar::FIELD_DOW_LOCAL

Campo de calendario para el día localizado de la semana. Es un valor entre 1 y 7, siendo 1 usado para el día de la semana que coincide con el valor representado por IntlCalendar::getFirstDayOfWeek().

IntlCalendar::FIELD_EXTENDED_YEAR

Campo de calendario para una representación numérica del año que es continua a lo largo de las eras. Para el calendario Gregoriano, el valor de este campo coincide con el de IntlCalendar::FIELD_YEAR para años DC; un año AC a se reprenta por -a + 1.

IntlCalendar::FIELD_JULIAN_DAY

Campo de calendario para un número de día juliano modificado. Es diferente de un número de día juliano convencional en que su transción sucede a medianoche de la zona local en vez de a mediodía en UTC. Identifica una fecha de manera única.

IntlCalendar::FIELD_MILLISECONDS_IN_DAY

Campo de calendario que abarca la información de IntlCalendar::FIELD_HOUR_OF_DAY, IntlCalendar::FIELD_MINUTE, IntlCalendar::FIELD_SECOND y IntlCalendar::FIELD_MILLISECOND. El rango es desde 0 a 24 * 3600 * 1000 - 1. No es la cantidad de milisegundos transcurridos del día, ya que las transiciones DST tendrán discontinuidades análogas a aquellas de la hora real ('wall time').

IntlCalendar::FIELD_IS_LEAP_MONTH

Campo de calendario cuyo valor es 1 para indicar un mes bisiesto, y 0 para lo contrario.

IntlCalendar::FIELD_FIELD_COUNT

El número total de campos.

IntlCalendar::FIELD_DAY_OF_MONTH

Alias de IntlCalendar::FIELD_DATE.

IntlCalendar::DOW_SUNDAY

Domingo.

IntlCalendar::DOW_MONDAY

Lunes.

IntlCalendar::DOW_TUESDAY

Martes.

IntlCalendar::DOW_WEDNESDAY

Miércoles.

IntlCalendar::DOW_THURSDAY

Jueves.

IntlCalendar::DOW_FRIDAY

Viernes.

IntlCalendar::DOW_SATURDAY

Sábado.

IntlCalendar::DOW_TYPE_WEEKDAY

Salida generada por IntlCalendar::getDayOfWeekType() que indica que un día de la semana es un día entresemana.

IntlCalendar::DOW_TYPE_WEEKEND

Salida generada por IntlCalendar::getDayOfWeekType() que indica que un día de la semana pertenece al fin de semana.

IntlCalendar::DOW_TYPE_WEEKEND_OFFSET

Salida generada por IntlCalendar::getDayOfWeekType() que indica que el fin de semana comienza durante un día dado de una semana.

IntlCalendar::DOW_TYPE_WEEKEND_CEASE

Salida generada por IntlCalendar::getDayOfWeekType() que indica que el fin de semana finaliza durante un día dado de la semana.

IntlCalendar::WALLTIME_FIRST

Salida generada por IntlCalendar::getSkippedWallTimeOption() que indica que las horas reales del rango omitido deberían hacer referencia al mismo instante que las horas reales con una hora menos, y la generada por IntlCalendar::getRepeatedWallTimeOption() que indica que las horas reales del rango repetido deberían hacer referencia al instante de la primera aparición de tal hora real.

IntlCalendar::WALLTIME_LAST

Salida generada por IntlCalendar::getSkippedWallTimeOption() que indica que los "wall times" del rango omitido deberían hacer referencia al mismo instante que los "wall times" con una hora después, y la generada por IntlCalendar::getRepeatedWallTimeOption() que indica que las horas reales del rango repetido deberían hacer referencia al instante de la segunda aparición de tal hora real.

IntlCalendar::WALLTIME_NEXT_VALID

Salida generada por IntlCalendar::getSkippedWallTimeOption() que indica que las horea reales del rango omitido deberían hacer referencia al instante cuando sucede (comienza) la transición del horario de verano.

Tabla de contenidos


intl
PHP Manual