文字

IntlCalendar::getRepeatedWallTimeOption

(PHP 5.5.0, PECL >= 3.0.0a1)

IntlCalendar::getRepeatedWallTimeOptionGet behavior for handling repeating wall time

说明

面向对象风格

public int IntlCalendar::getRepeatedWallTimeOption ( void )

过程化风格

int intlcal_get_repeated_wall_time_option ( IntlCalendar $cal )

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 .

范例

Example #1 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 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
上一篇: 下一篇: