2024 年日本 PHP 研討會

IntlGregorianCalendar 類別

(PHP 5 >= 5.5.0, PHP 7, PHP 8)

簡介

類別概要

類別 IntlGregorianCalendar 繼承自 IntlCalendar {
/* 繼承的常數 */
public const int IntlCalendar::FIELD_YEAR; // 年
public const int IntlCalendar::FIELD_MONTH; // 月
public const int IntlCalendar::FIELD_WEEK_OF_YEAR; // 一年中的週數
public const int IntlCalendar::FIELD_WEEK_OF_MONTH; // 一月中的週數
public const int IntlCalendar::FIELD_DATE; // 日期
public const int IntlCalendar::FIELD_DAY_OF_YEAR; // 一年中的天數
public const int IntlCalendar::FIELD_DAY_OF_WEEK; // 星期幾
public const int IntlCalendar::FIELD_DAY_OF_WEEK_IN_MONTH; // 一月中的第幾個星期幾
public const int IntlCalendar::FIELD_AM_PM; // 上午/下午
public const int IntlCalendar::FIELD_HOUR; // 小時 (12 小時制)
public const int IntlCalendar::FIELD_HOUR_OF_DAY; // 小時 (24 小時制)
public const int IntlCalendar::FIELD_MINUTE; // 分鐘
public const int IntlCalendar::FIELD_SECOND; // 秒
public const int IntlCalendar::FIELD_MILLISECOND; // 毫秒
public const int IntlCalendar::FIELD_ZONE_OFFSET; // 時區偏移量
public const int IntlCalendar::FIELD_DST_OFFSET; // 夏令時間偏移量
public const int IntlCalendar::FIELD_YEAR_WOY; // 該週數所在年份 (依 WEEK_OF_YEAR 計算)
public const int IntlCalendar::FIELD_DOW_LOCAL; // 當地星期幾
公開常數 整數 IntlCalendar::FIELD_EXTENDED_YEAR;
公開常數 整數 IntlCalendar::FIELD_JULIAN_DAY;
公開常數 整數 IntlCalendar::FIELD_MILLISECONDS_IN_DAY;
公開常數 整數 IntlCalendar::FIELD_IS_LEAP_MONTH;
公開常數 整數 IntlCalendar::FIELD_FIELD_COUNT;
公開常數 整數 IntlCalendar::FIELD_DAY_OF_MONTH;
公開常數 整數 IntlCalendar::DOW_SUNDAY;
公開常數 整數 IntlCalendar::DOW_MONDAY;
公開常數 整數 IntlCalendar::DOW_TUESDAY;
公開常數 整數 IntlCalendar::DOW_WEDNESDAY;
公開常數 整數 IntlCalendar::DOW_THURSDAY;
公開常數 整數 IntlCalendar::DOW_FRIDAY;
公開常數 整數 IntlCalendar::DOW_SATURDAY;
公開常數 整數 IntlCalendar::DOW_TYPE_WEEKDAY;
公開常數 整數 IntlCalendar::DOW_TYPE_WEEKEND;
公開常數 整數 IntlCalendar::DOW_TYPE_WEEKEND_OFFSET;
公開常數 整數 IntlCalendar::DOW_TYPE_WEEKEND_CEASE;
公開常數 整數 IntlCalendar::WALLTIME_FIRST;
/* 方法 */
公開 __construct(IntlTimeZone $tz = ?, string $locale = ?)
公開 __construct(int $timeZoneOrYear, int $localeOrMonth, int $dayOfMonth)
公開 __construct(
    int $timeZoneOrYear,
    int $localeOrMonth,
    int $dayOfMonth,
    int $hour,
    int $minute,
    int $second = ?
)
公開 靜態 createFromDate(int $year, int $month, int $dayOfMonth): static
公開 靜態 createFromDateTime(
    int $year,
    int $month,
    int $dayOfMonth,
    int $hour,
    int $minute,
    ?int $second = null
): static
公開 isLeapYear(int $year): bool
公開 setGregorianChange(float $timestamp): bool
/* 繼承的方法 */
公開 IntlCalendar::add(int $field, int $value): bool
公開 IntlCalendar::clear(?int $field = null): true
公開 IntlCalendar::fieldDifference(float $timestamp, int $field): int|false
公開 靜態 IntlCalendar::getKeywordValuesForLocale(字串 $keyword, 字串 $locale, 布林值 $onlyCommon): IntlIterator|false
公開 IntlCalendar::isSet(int $field): bool
公開 IntlCalendar::isWeekend(?float $timestamp = null): bool
公開 IntlCalendar::roll(int $field, int|bool $value): bool
公開 IntlCalendar::set(int $field, int $value): true
公開 IntlCalendar::set(
    int $year,
    int $month,
    int $dayOfMonth = NULL,
    int $hour = NULL,
    int $minute = NULL,
    int $second = NULL
): true
公開 IntlCalendar::setDate(int $year, int $month, int $dayOfMonth): void
公開 IntlCalendar::setDateTime(
    int $year,
    int $month,
    int $dayOfMonth,
    int $hour,
    int $minute,
    ?int $second = null
):
}

目錄

新增註解

使用者貢獻的註解 1 則註解

Julian Sawicki
4 年前
我使用 `IntlGregorianCalendar` 是因為它提供了一個很好的方法來獲取一年中的週數作為整數。這與 `DateTime` 不同;`DateTime` 會將一年中的週數作為字串提供。

<?php

$dateTime
= new DateTime('21-09-2020 09:00:00');
echo
$dateTime->format("W"); // 字串 '39'

$intlCalendar = IntlCalendar::fromDateTime ('21-09-2020 09:00:00');
echo
$intlCalendar->get(IntlCalendar::FIELD_WEEK_OF_YEAR); // 整數 39
To Top