PHP 日本大会 2024

IntlGregorianCalendar 类

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

简介

类概要

class IntlGregorianCalendar extends IntlCalendar {
/* 继承的常量 */
/* 方法 */
public __construct(IntlTimeZone $tz = ?, string $locale = ?)
public __construct(int $timeZoneOrYear, int $localeOrMonth, int $dayOfMonth)
public __construct(
    int $timeZoneOrYear,
    int $localeOrMonth,
    int $dayOfMonth,
    int $hour,
    int $minute,
    int $second = ?
)
public static createFromDate(int $year, int $month, int $dayOfMonth): static
public static createFromDateTime(
    int $year,
    int $month,
    int $dayOfMonth,
    int $hour,
    int $minute,
    ?int $second = null
): static
public isLeapYear(int $year): bool
public setGregorianChange(float $timestamp): bool
/* 继承的方法 */
public IntlCalendar::add(int $field, int $value): bool
public IntlCalendar::clear(?int $field = null): true
public IntlCalendar::fieldDifference(float $timestamp, int $field): int|false
public IntlCalendar::get(int $field): int|false
public static IntlCalendar::getKeywordValuesForLocale(string $keyword, string $locale, bool $onlyCommon): IntlIterator|false
public static IntlCalendar::getNow(): float
public IntlCalendar::isSet(int $field): bool
public IntlCalendar::isWeekend(?float $timestamp = null): bool
public IntlCalendar::roll(int $field, int|bool $value): bool
public IntlCalendar::set(int $field, int $value): true
public IntlCalendar::set(
    int $year,
    int $month,
    int $dayOfMonth = NULL,
    int $hour = NULL,
    int $minute = NULL,
    int $second = NULL
): true
public IntlCalendar::setDate(int $year, int $month, int $dayOfMonth): void
public IntlCalendar::setDateTime(
    int $year,
    int $month,
    int $dayOfMonth,
    int $hour,
    int $minute,
    ?int $second = null
): void
public IntlCalendar::setTime(float $timestamp): bool
}

目录

添加笔记

用户贡献笔记 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