IntlCalendar::getActualMaximum

オブジェクトの現在時刻を考慮して、フィールドの最大値を取得する

説明

オブジェクト指向型

public intfalse IntlCalendar::getActualMaximum(int $field)

手続き型

intfalse intlcal_get_actual_maximum(IntlCalendar $calendar, int $field)

現在時刻に応じた、フィールドに関連する最大値を返します。 正確なセマンティクスはフィールドによって異なりますが、 一般的な場合、 フィールドの値が 関連する最大値のうち、最小のもの に設定されたとすると、 フィールドの値が グローバルな最大値 に達するか、1周まわって元に戻るまでインクリメントされ、 グローバルな最大値の値か、 元に戻る直前の値がそれぞれ返されます。

たとえば、グレゴリオ暦においては、 実際の 月の日付 の最大値は、 現在時刻の年や月に応じて、 28 から 31 までの異なる値をとります。

パラメータ

calendar

IntlCalendar クラスのインスタンス。

field

IntlCalendar の日付/時刻 フィールド定数 のいずれか。 0 から IntlCalendar::FIELD_COUNT までの間の整数値です。

戻り値

指定された field に関連付けられた単位の最大値を表す数値を返します。 失敗した場合に false を返します

例1 IntlCalendar::getActualMaximum

<?php
ini_set('date.timezone', 'Europe/Lisbon');

$cal = IntlCalendar::fromDateTime('2013-02-15');
var_dump($cal->getActualMaximum(IntlCalendar::FIELD_DAY_OF_MONTH)); //28

$cal->add(IntlCalendar::FIELD_EXTENDED_YEAR, -1);
var_dump($cal->getActualMaximum(IntlCalendar::FIELD_DAY_OF_MONTH)); //29

上の例の出力は以下となります。

int(28)
int(29)

参考

  • IntlCalendar::getMaximum
  • IntlCalendar::getLeastMaximum
  • IntlCalendar::getActualMinimum