IntlCalendar::createInstance
(PHP 5 >= 5.5.0, PHP 7, PECL >= 3.0.0a1)
IntlCalendar::createInstance — Create a new IntlCalendar
Описание
Объектно-ориентированный стиль
$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($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"