IntlCalendar::createInstance

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

IntlCalendar::createInstanceCreate a new IntlCalendar

Описание

Объектно-ориентированный стиль

public static IntlCalendar::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, то будет использована временная зона по умолчанию, заданная в ini-настроке date.timezone либо с помощью функции date_default_timezone_set() и возвращенная функцией date_default_timezone_get().

  • Объект класса IntlTimeZone.

  • Объект класса DateTimeZone. Его идентификатор будет извлечен и на его основе будет создан объект временной зоны ICU; временная зона будет сохранена в базе данных ICU, а не PHP.

  • Строка, являющаяся корректным идентификатором временной зоны ICU. Смотрите IntlTimeZone::createTimeZoneIDEnumeration(). "Сырые" смещения, типа "GMT+08:30", также поддерживаются.

locale

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

Возвращаемые значения

The created IntlCalendar instance or null on failure.

Примеры

Пример #1 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($calIntlDateFormatter::FULL));
echo 
"\n";

echo 
"Explicit timezone\n";
$cal IntlCalendar::createInstance(IntlTimeZone::getGMT());
var_dump(get_class($cal),
        
IntlDateFormatter::formatObject($calIntlDateFormatter::FULL));
echo 
"\n";

echo 
"Explicit locale (with calendar)\n";
$cal IntlCalendar::createInstance(NULL'es_ES@calendar=persian');
var_dump(get_class($cal),
        
IntlDateFormatter::formatObject($calIntlDateFormatter::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"

Смотрите также