(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a1)
IntlCalendar::createInstance — 新しい IntlCalendar を作成する
オブジェクト指向型
$timezone
= null
, ?string $locale
= null
): ?IntlCalendar手続き型
$timezone
= null
, ?string $locale
= null
): ?IntlCalendar指定されたタイムゾーンとロケールを使い、 IntlCalendar を作成します。 このファクトリメソッドは IntlCalendar のサブクラスを返す可能性があります。
作成されたカレンダーオブジェクトは、 システムの時刻を基準とした、作成時点の時刻を表すインスタンスです。 フィールドは IntCalendar::clear() を引数なしでコールすることですべてクリアできます。 IntlGregorianCalendar::__construct() も参照下さい。
timezone
使用するタイムゾーン。
null
。この場合はデフォルトのタイムゾーンを使います。デフォルトは、ini 項目
date.timezone で設定したものか、
date_default_timezone_set() 関数で指定したもの
(そして date_default_timezone_get() が返すもの) になります。
IntlTimeZone。これを直接使います。
DateTimeZone。その識別子を取り出して、ICU タイムゾーンオブジェクトを作ります。 つまり、これは ICU のデータベースに基づくタイムゾーンとなり、PHP のタイムゾーンデータベースに基づくものではありません。
文字列。ICU タイムゾーン識別子として有効なものを指定します。
IntlTimeZone::createTimeZoneIDEnumeration() を参照ください。
"GMT+08:30"
などのオフセットも指定できます。
locale
使用するロケール。
null
の場合は、
デフォルトのロケール
を使います。
IntlCalendar のインスタンスを返します。
失敗時に null
を返します。
例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"