IntlCalendar::getRepeatedWallTimeOption()
(PHP 5 >= 5.5.0, PHP 7, PECL >= 3.0.0a1)
Get behavior for handling repeating wall time
说明
面向对象风格public IntlCalendar::getRepeatedWallTimeOption(void): int
过程化风格
intlcal_get_repeated_wall_time_option(IntlCalendar$cal): int
Gets the current strategy for dealing with wall times that are repeated whenever the clock is set back during dailight saving time end transitions. The default value is IntlCalendar::WALLTIME_LAST.
This function requires ICU 4.9 or later.
参数
- $cal
The IntlCalendar resource.
返回值
One of the constants IntlCalendar::WALLTIME_FIRST or IntlCalendar::WALLTIME_LAST.
范例
IntlCalendar::getRepeatedWallTimeOption()
<?php
ini_set('date.timezone', 'Europe/Lisbon');
ini_set('intl.default_locale', 'en_US');
ini_set('intl.error_level', E_WARNING);
//On October 27th at 0200, the clock goes back 1 hour and from GMT+01 to GMT+00
$cal = new IntlGregorianCalendar(2013, 9 /* October */, 27, 1, 30);
var_dump($cal->getRepeatedWalltimeOption()); // 0 WALLTIME_LAST
$formatter = IntlDateFormatter::create(
NULL,
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'UTC'
);
var_dump($formatter->format($cal->getTime() / 1000.));
$cal->setRepeatedWalltimeOption(IntlCalendar::WALLTIME_FIRST);
var_dump($cal->getRepeatedWalltimeOption()); // 1 WALLTIME_FIRST
$cal->set(IntlCalendar::FIELD_HOUR_OF_DAY, 1);
var_dump($formatter->format($cal->getTime() / 1000.));以上例程会输出:
int(0) string(42) "Sunday, October 27, 2013 at 1:30:00 AM GMT" int(1) string(43) "Sunday, October 27, 2013 at 12:30:00 AM GMT"
参见
- IntlCalendar::getSkippedWallTimeOption() Get behavior for handling skipped wall time
- IntlCalendar::setSkippedWallTimeOption() Set behavior for handling skipped wall times at positive timezone offset transitions
- IntlCalendar::setRepeatedWallTimeOption() Set behavior for handling repeating wall times at negative timezone offset transitions
