Internationalization IntlCalendar::roll
IntlCalendar::roll
(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a1)
IntlCalendar::roll — 더 중요한 필드로 옮기지 않고 필드에 가치 추가
설명
객체 지향 스타일
public IntlCalendar::roll(int $field
, int|bool $value
): bool
절차적 스타일
intlcal_roll(IntlCalendar $calendar
, int $field
, int|bool $value
): bool
필드에 (서명된) 금액을 추가합니다. IntlCalendar::add()와 관련된 차이점은 필드 값이 오버플로될 때 더 중요한 필드로 전달되지 않는다는 것입니다.
매개변수
calendar
- IntlCalendar 인스턴스입니다.
field
- IntlCalendar 날짜/시간 필드 상수 중 하나입니다.
0
과IntlCalendar::FIELD_COUNT
사이의 정수 값입니다. value
- 필드에 추가할 (서명된) 양, 롤업(1 추가)의 경우
true
, 롤다운(1
빼기)의 경우false
입니다.
반환 값
성공하면 true
를, 실패하면 false
를 반환합니다.
Examples
예제 #1 IntlCalendar::roll()
<?php
ini_set('date.timezone', 'Europe/Lisbon');
ini_set('intl.default_locale', 'pt_PT');
$cal = new IntlGregorianCalendar(2013, 5 /* June */, 30);
$cal->add(IntlCalendar::FIELD_DAY_OF_MONTH, 1);
var_dump(IntlDateFormatter::formatObject($cal)); // "01/07/2013, 00:00:00"
$cal->set(2013, 5 /* June */, 30);
$cal->roll(IntlCalendar::FIELD_DAY_OF_MONTH, true); // roll up, same as rolling +1
var_dump(IntlDateFormatter::formatObject($cal)); // "01/06/2013, 00:00:00"
위의 예는 다음을 출력합니다.
string(20) "01/07/2013, 00:00:00" string(20) "01/06/2013, 00:00:00"
기타
- IntlCalendar::add() - 필드에 (서명된) 시간 추가
- IntlCalendar::set() - 한 번에 시간 필드 또는 여러 공통 필드 설정