IntlDateFormatter::create
datefmt_create
IntlDateFormatter::__construct
(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)
IntlDateFormatter::create -- datefmt_create -- IntlDateFormatter::__construct — Date Formatter を作成する
説明
オブジェクト指向型
public
static
IntlDateFormatter::create
( string $locale
, int $datetype
, int $timetype
[, mixed $timezone
= NULL
[, mixed $calendar
= NULL
[, string $pattern
= ""
]]] ) : IntlDateFormatter
オブジェクト指向型 (コンストラクタ)
public
IntlDateFormatter::__construct
( string $locale
, int $datetype
, int $timetype
[, mixed $timezone
= NULL
[, mixed $calendar
= NULL
[, string $pattern
= ""
]]] )
手続き型
datefmt_create
( string $locale
, int $datetype
, int $timetype
[, mixed $timezone
= NULL
[, mixed $calendar
= NULL
[, string $pattern
= ""
]]] ) : IntlDateFormatter
Date Formatter を作成します。
パラメータ
locale
フォーマットやパースの際に使用するロケール。
null
を指定すると、 ini 設定 intl.default_locale の値を使います。datetype
使用する日付の形式 (
none
,short
,medium
,long
,full
)。 IntlDateFormatter の定数 のいずれかとなります。null
を指定すると、ICU のデフォルトの日付型を使います。timetype
使用する時刻の形式 (
none
,short
,medium
,long
,full
)。 IntlDateFormatter の定数 のいずれかとなります。null
を指定すると、ICU のデフォルトの時刻型を使います。timezone
タイムゾーン ID。デフォルト (そして、
null
が渡されたときにも使われるもの) は date_default_timezone_get() が返す ID、あるいはcalendar
パラメータに IntlCalendar オブジェクトが渡されていればそのタイムゾーンを使います。 この ID は、ICU のデータベースにある妥当な識別子である必要があります。あるいは、 オフセットを明示したGMT-05:30
のような形式になります。IntlTimeZone オブジェクトあるいは DateTimeZone オブジェクトも指定できます。
calendar
フォーマットやパースの際に使用するカレンダー。デフォルトは
null
で、 これはIntlDateFormatter::GREGORIAN
を表します。 IntlDateFormatter のカレンダー定数 あるいは IntlCalendar を指定します。 渡された IntlCalendar は、クローンされます。 IntlDateFormatter によって元のオブジェクトが書き換えられることはありません。 これは、利用するカレンダーの型 (グレゴリオ暦、イスラム暦、ペルシア暦など) の判定に使います。 また、timezone
パラメータにnull
を指定した場合にはタイムゾーンの判定にも使います。pattern
フォーマットやパースの際に使用するオプションのパターン。 使えるパターンについては » http://userguide.icu-project.org/formatparse/datetime を参照ください。
変更履歴
バージョン | 説明 |
---|---|
5.5.0/PECL 3.0.0 |
IntlCalendar オブジェクトを
IntlTimeZone オブジェクトや
DateTimeZone オブジェクトを
無効なタイムゾーン ID (空文字列を含む) を
|
例
例1 datefmt_create() の例
<?php$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles', IntlDateFormatter::GREGORIAN );echo "First Formatted output is ".datefmt_format( $fmt , 0);$fmt = datefmt_create( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles',IntlDateFormatter::GREGORIAN );echo "Second Formatted output is ".datefmt_format( $fmt , 0);$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles',IntlDateFormatter::GREGORIAN ,"MM/dd/yyyy");echo "First Formatted output with pattern is ".datefmt_format( $fmt , 0);$fmt = datefmt_create( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles',IntlDateFormatter::GREGORIAN ,"MM/dd/yyyy");echo "Second Formatted output with pattern is ".datefmt_format( $fmt , 0);?>
例2 オブジェクト指向の例
<?php$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles',IntlDateFormatter::GREGORIAN );echo "First Formatted output is ".$fmt->format(0);$fmt = new IntlDateFormatter( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles',IntlDateFormatter::GREGORIAN );echo "Second Formatted output is ".$fmt->format(0);$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles',IntlDateFormatter::GREGORIAN ,"MM/dd/yyyy");echo "First Formatted output with pattern is ".$fmt->format(0);$fmt = new IntlDateFormatter( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles',IntlDateFormatter::GREGORIAN , "MM/dd/yyyy");echo "Second Formatted output with pattern is ".$fmt->format(0);?>
上の例の出力は以下となります。
First Formatted output is Wednesday, December 31, 1969 4:00:00 PM PT Second Formatted output is Mittwoch, 31. Dezember 1969 16:00 Uhr GMT-08:00 First Formatted output with pattern is 12/31/1969 Second Formatted output with pattern is 12/31/1969
参考
- datefmt_format() - 日付/時刻 の値を文字列としてフォーマットする
- datefmt_parse() - 文字列をパースしてタイムスタンプにする
- datefmt_get_error_code() - 直近の操作のエラーコードを取得する
- datefmt_get_error_message() - 直近の操作のエラーテキストを取得する