IntlCalendar::getDayOfWeekType

指定された日が平日か、週末か、ふたつの週の間の移行日かを返す

説明

オブジェクト指向型

public intfalse IntlCalendar::getDayOfWeekType(int $dayOfWeek)

手続き型

intfalse intlcal_get_day_of_week_type(IntlCalendar $calendar, int $dayOfWeek)

指定された日が平日 (IntlCalendar::DOW_TYPE_WEEKDAY) か、 週末 (IntlCalendar::DOW_TYPE_WEEKEND) か、 週末が始まる日 (IntlCalendar::DOW_TYPE_WEEKEND_OFFSET) か、 週末が終了する日 (IntlCalendar::DOW_TYPE_WEEKEND_CEASE) であるかを返します。

IntlCalendar::DOW_TYPE_WEEKEND_OFFSET または IntlCalendar::DOW_TYPE_WEEKEND_CEASE を返した場合、 IntlCalendar::getWeekendTransition をコールして、週末の期間を取得することができます。

この関数を使うには、ICU 4.4 以降が必要です。

パラメータ

calendar

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

dayOfWeek

以下の定数のうち、いずれかを指定します。 IntlCalendar::DOW_SUNDAY, IntlCalendar::DOW_MONDAY, …, IntlCalendar::DOW_SATURDAY.

戻り値

定数 IntlCalendar::DOW_TYPE_WEEKDAY, IntlCalendar::DOW_TYPE_WEEKEND, IntlCalendar::DOW_TYPE_WEEKEND_OFFSET, IntlCalendar::DOW_TYPE_WEEKEND_CEASE のいずれかを返します。 失敗した場合に false を返します.

例1 IntlCalendar::getDayOfWeekType

<?php
foreach (array('en_US', 'ar_SA') as $locale) {
    echo "Locale: ", Locale::getDisplayName($locale, "en_US"), "\n";

    $cal = IntlCalendar::createInstance('UTC', $locale);

    for ($i = IntlCalendar::DOW_SUNDAY; $i <= IntlCalendar::DOW_SATURDAY; $i++) {
        $type = $cal->getDayOfWeekType($i);
        $transition = ($type !== IntlCalendar::DOW_TYPE_WEEKDAY)
            ? $cal->getWeekendTransition($i)
            : '';
        echo $i, " ", $type, " ", $transition, "\n";
    }
    echo "\n";
}
?>

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

Locale: English (United States)
1 1 86400000
2 0
3 0
4 0
5 0
6 0
7 1 0

Locale: Arabic (Saudi Arabia)
1 0
2 0
3 0
4 0
5 0
6 1 0
7 1 86400000