查詢

IntlCalendar::roll()函式—用法及示例

「 在國際化日曆物件中滾動指定的欄位 」


函式名稱:IntlCalendar::roll()

適用版本:PHP 5.5.0 及以上版本

函式描述:IntlCalendar::roll() 方法用於在國際化日曆物件中滾動指定的欄位。

用法:

bool IntlCalendar::roll ( int $field , mixed $amountOrUpOrDown )

引數:

  • $field:指定要滾動的欄位,可以是以下常量之一:

    • IntlCalendar::FIELD_ERA:時代欄位
    • IntlCalendar::FIELD_YEAR:年份欄位
    • IntlCalendar::FIELD_MONTH:月份欄位
    • IntlCalendar::FIELD_WEEK_OF_YEAR:年中的週數字段
    • IntlCalendar::FIELD_WEEK_OF_MONTH:月中的週數字段
    • IntlCalendar::FIELD_DAY_OF_MONTH:月份中的日期欄位
    • IntlCalendar::FIELD_DAY_OF_YEAR:年中的日期欄位
    • IntlCalendar::FIELD_DAY_OF_WEEK:週中的日期欄位
    • IntlCalendar::FIELD_DAY_OF_WEEK_IN_MONTH:月中的日期欄位
    • IntlCalendar::FIELD_AM_PM:上午/下午欄位
    • IntlCalendar::FIELD_HOUR:小時欄位
    • IntlCalendar::FIELD_HOUR_OF_DAY:一天中的小時欄位
    • IntlCalendar::FIELD_MINUTE:分鐘欄位
    • IntlCalendar::FIELD_SECOND:秒欄位
    • IntlCalendar::FIELD_MILLISECOND:毫秒欄位
  • $amountOrUpOrDown:滾動的數量或者滾動的方向,可以是以下常量之一:

    • IntlCalendar::RAISE:將欄位的值增加給定數量
    • IntlCalendar::LOWER:將欄位的值減少給定數量
    • IntlCalendar::KEEP:保持欄位的值不變

返回值:

  • 成功時返回 true,失敗時返回 false

示例:

$cal = IntlCalendar::createInstance('Asia/Tokyo', 'en_US');
$cal->set(2020, 12, 31); // 設定日期為 2020 年 12 月 31 日

$cal->roll(IntlCalendar::FIELD_MONTH, 1); // 將月份欄位增加 1
echo $cal->get(IntlCalendar::FIELD_MONTH); // 輸出 1

$cal->roll(IntlCalendar::FIELD_DAY_OF_MONTH, -1); // 將日期欄位減少 1
echo $cal->get(IntlCalendar::FIELD_DAY_OF_MONTH); // 輸出 30

上述示例中,我們建立了一個國際化日曆物件 $cal,並將日期設定為 2020 年 12 月 31 日。然後,我們使用 roll() 方法將月份欄位增加 1,輸出結果為 1(因為月份是迴圈的)。接著,我們使用 roll() 方法將日期欄位減少 1,輸出結果為 30。

補充糾錯
上一個函式: IntlCalendar::set()函式
下一個函式: IntlCalendar::isWeekend()函式
熱門PHP函式
分享連結