• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • IntlCalendar::createInstance()

    (PHP 5 >= 5.5.0, PHP 7, PECL >= 3.0.0a1)

    Create a new IntlCalendar

    说明

    面向对象风格
    publicstaticIntlCalendar::createInstance([mixed $timeZone= NULL[,string $locale= ""]]): IntlCalendar
    过程化风格
    intlcal_create_instance([mixed $timeZone= NULL[,string $locale= ""]]): IntlCalendar

    Given a timezone and locale, this method creates an IntlCalendar object. This factory method may return a subclass of IntlCalendar.

    The calendar created will represent the time instance at which it was created, based on the system time. The fields can all be cleared by calling IntCalendar::clear() with no arguments. See also IntlGregorianCalendar::__construct().

    参数

    $timeZone

    The timezone to use.

    • NULL, in which case the default timezone will be used, as specified in the ini setting date.timezone or through the function date_default_timezone_set() and as returned by date_default_timezone_get().

    • An IntlTimeZone, which will be used directly.

    • A DateTimeZone. Its identifier will be extracted and an ICU timezone object will be created; the timezone will be backed by ICUʼs database, not PHPʼs.

    • A string, which should be a valid ICU timezone identifier. See IntlTimeZone::createTimeZoneIDEnumeration(). Raw offsets such as"GMT+08:30"are also accepted.

    $locale

    A locale to use or NULL to use the default locale.

    返回值

    The created IntlCalendar instance or NULL on failure.

    范例

    IntlCalendar::createInstance()

    <?php
    ini_set('intl.default_locale', 'es_ES');
    ini_set('date.timezone', 'Europe/Madrid');
    $cal = IntlCalendar::createInstance();
    echo "No arguments\n";
    var_dump(get_class($cal),
            IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL));
    echo "\n";
    echo "Explicit timezone\n";
    $cal = IntlCalendar::createInstance(IntlTimeZone::getGMT());
    var_dump(get_class($cal),
            IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL));
    echo "\n";
    echo "Explicit locale (with calendar)\n";
    $cal = IntlCalendar::createInstance(NULL, 'es_ES@calendar=persian');
    var_dump(get_class($cal),
            IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL));

    以上例程会输出:

    No arguments
    string(21) "IntlGregorianCalendar"
    string(68) "martes 18 de junio de 2013 14:11:02 Hora de verano de Europa Central"
    Explicit timezone
    string(21) "IntlGregorianCalendar"
    string(45) "martes 18 de junio de 2013 12:11:02 GMT+00:00"
    Explicit locale (with calendar)
    string(12) "IntlCalendar"
    string(70) "martes 28 de Khordad de 1392 14:11:02 Hora de verano de Europa Central"
    

    参见

    • IntlGregorianCalendar::__construct() Create the Gregorian Calendar class