©
本文档使用
php.cn手册 发布
(PHP 5.5.0, PECL >= 3.0.0a1)
IntlCalendar::createInstance — Create a new IntlCalendar
面向对象风格
$timeZone
= NULL
[, string $locale
= ""
]] )过程化风格
$timeZone
= NULL
[, string $locale
= ""
]] )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.
Example #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"