Internationalization IntlCalendar 클래스

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


소개


클래스 개요

class IntlCalendar {
  /* Constants */
  const int FIELD_ERA = 0;
  const int FIELD_YEAR = 1;
  const int FIELD_MONTH = 2;
  const int FIELD_WEEK_OF_YEAR = 3;
  const int FIELD_WEEK_OF_MONTH = 4;
  const int FIELD_DATE = 5;
  const int FIELD_DAY_OF_YEAR = 6;
  const int FIELD_DAY_OF_WEEK = 7;
  const int FIELD_DAY_OF_WEEK_IN_MONTH = 8;
  const int FIELD_AM_PM = 9;
  const int FIELD_HOUR = 10;
  const int FIELD_HOUR_OF_DAY = 11;
  const int FIELD_MINUTE = 12;
  const int FIELD_SECOND = 13;
  const int FIELD_MILLISECOND = 14;
  const int FIELD_ZONE_OFFSET = 15;
  const int FIELD_DST_OFFSET = 16;
  const int FIELD_YEAR_WOY = 17;
  const int FIELD_DOW_LOCAL = 18;
  const int FIELD_EXTENDED_YEAR = 19;
  const int FIELD_JULIAN_DAY = 20;
  const int FIELD_MILLISECONDS_IN_DAY = 21;
  const int FIELD_IS_LEAP_MONTH = 22;
  const int FIELD_FIELD_COUNT = 23;
  const int FIELD_DAY_OF_MONTH = 5;
  const int DOW_SUNDAY = 1;
  const int DOW_MONDAY = 2;
  const int DOW_TUESDAY = 3;
  const int DOW_WEDNESDAY = 4;
  const int DOW_THURSDAY = 5;
  const int DOW_FRIDAY = 6;
  const int DOW_SATURDAY = 7;
  const int DOW_TYPE_WEEKDAY = 0;
  const int DOW_TYPE_WEEKEND = 1;
  const int DOW_TYPE_WEEKEND_OFFSET = 2;
  const int DOW_TYPE_WEEKEND_CEASE = 3;
  const int WALLTIME_FIRST = 1;
  const int WALLTIME_LAST = 0;
  const int WALLTIME_NEXT_VALID = 2;
  /* Methods */
  private __construct()
  public add(int $field, int $value): bool
  public after(IntlCalendar $other): bool
  public before(IntlCalendar $other): bool
  public clear(?int $field = null): bool
  public static createInstance(IntlTimeZone|DateTimeZone|string|null $timezone = null, ?string $locale = null): ?IntlCalendar
  public equals(IntlCalendar $other): bool
  public fieldDifference(float $timestamp, int $field): int|false
  public static fromDateTime(DateTime|string $datetime, ?string $locale = null): ?IntlCalendar
  public get(int $field): int|false
  public getActualMaximum(int $field): int|false
  public getActualMinimum(int $field): int|false
  public static getAvailableLocales(): array
  public getDayOfWeekType(int $dayOfWeek): int|false
  public getErrorCode(): int|false
  public getErrorMessage(): string|false
  public getFirstDayOfWeek(): int|false
  public getGreatestMinimum(int $field): int|false
  public static getKeywordValuesForLocale(string $keyword, string $locale, bool $onlyCommon): IntlIterator|false
  public getLeastMaximum(int $field): int|false
  public getLocale(int $type): string|false
  public getMaximum(int $field): int|false
  public getMinimalDaysInFirstWeek(): int|false
  public getMinimum(int $field): int|false
  public static getNow(): float
  public getRepeatedWallTimeOption(): int
  public getSkippedWallTimeOption(): int
  public getTime(): float|false
  public getTimeZone(): IntlTimeZone|false
  public getType(): string
  public getWeekendTransition(int $dayOfWeek): int|false
  public inDaylightTime(): bool
  public isEquivalentTo(IntlCalendar $other): bool
  public isLenient(): bool
  public isSet(int $field): bool
  public isWeekend(?float $timestamp = null): bool
  public roll(int $field, int|bool $value): bool
  public set(int $field, int $value): bool
  public set(
      int $year,
      int $month,
      int $dayOfMonth = NULL,
      int $hour = NULL,
      int $minute = NULL,
      int $second = NULL
  ): bool
  public setFirstDayOfWeek(int $dayOfWeek): bool
  public setLenient(bool $lenient): bool
  public setMinimalDaysInFirstWeek(int $days): bool
  public setRepeatedWallTimeOption(int $option): bool
  public setSkippedWallTimeOption(int $option): bool
  public setTime(float $timestamp): bool
  public setTimeZone(IntlTimeZone|DateTimeZone|string|null $timezone): bool
  public toDateTime(): DateTime|false
}
                

미리 정의된 상수

IntlCalendar::FIELD_ERA
연대를 숫자로 나타내는 달력 필드입니다. 예를 들어 그레고리력/율리우스력의 경우 1, BC의 경우 0, 일본 달력의 헤이세이(平成) 시대는 235입니다. 모든 달력에 하나 이상의 연대가 있는 것은 아닙니다.
IntlCalendar::FIELD_YEAR
연도의 달력 필드입니다. 이것은 시대를 초월한 독특한 것이 아닙니다. 달력 유형에 하나 이상의 연대가 있는 경우 일반적으로 이 필드의 최소값은 1입니다.
IntlCalendar::FIELD_MONTH
해당 월의 달력 필드입니다. 월 순서는 0을 기준으로 하므로 1월(여기에서는 달력의 첫 번째 달을 나타내는 데 사용됨, 이슬람 달력에서 Muharram과 같은 다른 이름으로 불릴 수 있음)은 0으로, 2월은 1로, ..., 12월은 다음으로 표시됩니다. 11 및 달력이 있는 경우 13일 또는 윤월은 12까지입니다.
IntlCalendar::FIELD_WEEK_OF_YEAR
해당 연도의 주 번호에 대한 달력 필드입니다. 이것은 주의 시작으로 간주되는 요일한 주의 최소 일 수에 따라 다릅니다.
IntlCalendar::FIELD_WEEK_OF_MONTH
해당 월의 주 번호에 대한 달력 필드입니다. 이것은 주의 시작으로 간주되는 요일한 주의 최소 일 수에 따라 다릅니다.
IntlCalendar::FIELD_DATE
해당 월의 달력 필드입니다. 이름이 더 명확한 IntlCalendar::FIELD_DAY_OF_MONTH와 동일합니다.
IntlCalendar::FIELD_DAY_OF_YEAR
올해의 달력 필드입니다. 그레고리력의 경우 1로 시작하여 365 또는 366으로 끝납니다.
IntlCalendar::FIELD_DAY_OF_WEEK
요일의 달력 필드입니다. 해당 값은 1(일요일, IntlCalendar::DOW_SUNDAY 및 후속 상수 참조)로 시작하고 마지막 유효한 값은 7(토요일)입니다.
IntlCalendar::FIELD_DAY_OF_WEEK_IN_MONTH
요일(일요일, 월요일, ...)이 주어지면 이 달력 필드는 특정 월의 해당 요일에 서수를 할당합니다. 따라서 이 필드의 값이 1이고 요일의 값이 2(월요일)이면 해당 월의 설정일은 해당 월의 첫 번째 월요일입니다. 최대값은 5입니다.

또한 값 0과 음수 값도 허용됩니다. 값 0은 한 달의 처음 7일 직전에 발생하는 7일을 포함합니다(따라서 값이 1인 '요일'을 가짐). 음수 값은 월말부터 계산을 시작합니다. -1은 해당 월의 마지막 요일을 가리키고 -2는 마지막 두 번째 날짜를 가리킵니다.

IntlCalendar::FIELD_WEEK_OF_MONTHIntlCalendar::FIELD_WEEK_OF_YEAR와 달리 이 값은 IntlCalendar::getFirstDayOfWeek() 또는 IntlCalendar::getMinimalDaysInFirstWeek()에 종속되지 않습니다. 첫 번째 월요일은 이전 달에 속하는 주에 있더라도 첫 번째 월요일입니다.

IntlCalendar::FIELD_AM_PM
시간이 정오 이전(값 0, AM)인지 또는 이후(1)인지를 나타내는 달력 필드입니다. 자정은 AM, 정오는 PM입니다.
IntlCalendar::FIELD_HOUR
오전인지 오후인지 지정하지 않고 시간에 대한 달력 필드입니다. 유효한 값은 0~11입니다.
IntlCalendar::FIELD_HOUR_OF_DAY
하루의 전체(24시간) 시간에 대한 달력 필드입니다. 유효한 값은 0~23입니다.
IntlCalendar::FIELD_MINUTE
시간의 분 구성요소에 대한 달력 필드입니다.
IntlCalendar::FIELD_SECOND
시간의 초 구성 요소에 대한 달력 필드입니다.
IntlCalendar::FIELD_MILLISECOND
달력 필드는 시간의 밀리초 구성요소입니다.
IntlCalendar::FIELD_ZONE_OFFSET
표준 시간대의 원시 오프셋을 나타내는 달력 필드(밀리초)입니다. 원시 오프셋은 일광 절약 시간제로 인한 오프셋을 제외한 시간대 오프셋입니다.
IntlCalendar::FIELD_DST_OFFSET
달력 시간에 대해 활성화된 경우 달력 시간대의 일광 절약 시간 오프셋에 대한 달력 필드(밀리초)입니다.
IntlCalendar::FIELD_YEAR_WOY
week of year 목적으로 연도를 나타내는 달력 필드입니다.
IntlCalendar::FIELD_DOW_LOCAL
현지화된 요일의 달력 필드입니다. IntlCalendar::getFirstDayOfWeek()에서 반환된 값과 일치하는 요일에 1이 사용되는 1에서 7 사이의 값입니다.
IntlCalendar::FIELD_EXTENDED_YEAR
여러 시대에 걸쳐 연속적인 연도 숫자 표현을 위한 달력 필드입니다. 그레고리력의 경우 이 필드의 값은 AD 연도의 경우 IntlCalendar::FIELD_YEAR의 값과 일치합니다. BC 연도 y-y + 1로 표시됩니다.
IntlCalendar::FIELD_JULIAN_DAY
수정된 율리우스력 일수에 대한 달력 필드입니다. UTC 정오가 아닌 로컬 영역 자정에 전환이 발생한다는 점에서 기존의 율리우스력 일 수와 다릅니다. 날짜를 고유하게 식별합니다.
IntlCalendar::FIELD_MILLISECONDS_IN_DAY
IntlCalendar::FIELD_HOUR_OF_DAY, IntlCalendar::FIELD_MINUTE, IntlCalendar::FIELD_SECONDIntlCalendar::FIELD_MILLISECOND의 정보를 포함하는 달력 필드입니다. 범위는 0 ~ 24 * 3600 * 1000 - 1입니다. DST 전환 시 벽 시간과 유사한 불연속성을 갖게 되므로 하루에 경과된 시간(밀리초)이 아닙니다.
IntlCalendar::FIELD_IS_LEAP_MONTH
윤월을 나타내는 경우 값이 1이고 그렇지 않은 경우 0인 달력 필드입니다.
IntlCalendar::FIELD_FIELD_COUNT
총 필드 수입니다.
IntlCalendar::FIELD_DAY_OF_MONTH
IntlCalendar::FIELD_DATE의 별칭입니다.
IntlCalendar::DOW_SUNDAY
Sunday.
IntlCalendar::DOW_MONDAY
Monday.
IntlCalendar::DOW_TUESDAY
Tuesday.
IntlCalendar::DOW_WEDNESDAY
Wednesday.
IntlCalendar::DOW_THURSDAY
Thursday.
IntlCalendar::DOW_FRIDAY
Friday.
IntlCalendar::DOW_SATURDAY
Saturday.
IntlCalendar::DOW_TYPE_WEEKDAY
요일이 요일임을 나타내는 IntlCalendar::getDayOfWeekType()의 출력입니다.
IntlCalendar::DOW_TYPE_WEEKEND
요일이 주말에 속함을 나타내는 IntlCalendar::getDayOfWeekType()의 출력입니다.
IntlCalendar::DOW_TYPE_WEEKEND_OFFSET
주말이 지정된 요일에 시작됨을 나타내는 IntlCalendar::getDayOfWeekType()의 출력입니다.
IntlCalendar::DOW_TYPE_WEEKEND_CEASE
주말이 지정된 요일에 종료됨을 나타내는 IntlCalendar::getDayOfWeekType()의 출력입니다.
IntlCalendar::WALLTIME_FIRST
IntlCalendar::getSkippedWallTimeOption()의 출력은 건너뛴 범위의 실제 시간이 실제 시간과 1시간이 적은 동일한 순간을 참조해야 함을 나타내고 IntlCalendar::getRepeatedWallTimeOption()의 출력은 반복된 범위의 실제 시간을 참조해야 함을 나타냅니다. 이러한 벽 시간의 첫 번째 발생.
IntlCalendar::WALLTIME_LAST
IntlCalendar::getSkippedWallTimeOption()의 출력은 건너뛴 범위의 실제 시간이 1시간 후의 실제 시간과 동일한 순간을 참조해야 함을 나타내고 IntlCalendar::getRepeatedWallTimeOption()의 출력은 반복된 범위의 실제 시간을 참조해야 함을 나타냅니다. 이러한 벽 시간의 두 번째 발생.
IntlCalendar::WALLTIME_NEXT_VALID
IntlCalendar::getSkippedWallTimeOption()의 출력은 건너뛴 범위의 벽 시간이 일광 절약 시간 전환이 발생(시작)되는 순간을 참조해야 함을 나타냅니다.

목차