IntlDateFormatter::create
datefmt_create
IntlDateFormatter::__construct
(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)
IntlDateFormatter::create -- datefmt_create -- IntlDateFormatter::__construct — Create a date formatter
说明
面向对象风格
$locale
, int $datetype
, int $timetype
[, mixed $timezone
= NULL
[, mixed $calendar
= NULL
[, string $pattern
= ""
]]] ) : IntlDateFormatter面向对象风格 (constructor)
$locale
, int $datetype
, int $timetype
[, mixed $timezone
= NULL
[, mixed $calendar
= NULL
[, string $pattern
= ""
]]] )过程化风格
$locale
, int $datetype
, int $timetype
[, mixed $timezone
= NULL
[, mixed $calendar
= NULL
[, string $pattern
= ""
]]] ) : IntlDateFormatterCreate a date formatter.
参数
-
locale
-
Locale to use when formatting or parsing or
NULL
to use the value specified in the ini setting intl.default_locale. -
datetype
-
Date type to use (
none
,short
,medium
,long
,full
). This is one of the IntlDateFormatter constants. It can also beNULL
, in which case ICUʼs default date type will be used. -
timetype
-
Time type to use (
none
,short
,medium
,long
,full
). This is one of the IntlDateFormatter constants. It can also beNULL
, in which case ICUʼs default time type will be used. -
timezone
-
Time zone ID. The default (and the one used if
NULL
is given) is the one returned by date_default_timezone_get() or, if applicable, that of the IntlCalendar object passed for thecalendar
parameter. This ID must be a valid identifier on ICUʼs database or an ID representing an explicit offset, such as GMT-05:30.This can also be an IntlTimeZone or a DateTimeZone object.
-
calendar
-
Calendar to use for formatting or parsing. The default value is
NULL
, which corresponds toIntlDateFormatter::GREGORIAN
. This can either be one of the IntlDateFormatter calendar constants or an IntlCalendar. Any IntlCalendar object passed will be clone; it will not be changed by the IntlDateFormatter. This will determine the calendar type used (gregorian, islamic, persian, etc.) and, ifNULL
is given for thetimezone
parameter, also the timezone used. -
pattern
-
Optional pattern to use when formatting or parsing. Possible patterns are documented at » http://userguide.icu-project.org/formatparse/datetime.
返回值
The created IntlDateFormatter or FALSE
in case of
failure.
更新日志
版本 | 说明 |
---|---|
5.5.0/PECL 3.0.0 |
An IntlCalendar object is allowed for
Objects of type IntlTimeZone and
DateTimeZone are allowed for
Invalid timezone identifiers (including empty strings) are no longer
allowed for
If |
范例
Example #1 datefmt_create() example
<?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);
?>
Example #2 OO example
<?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() - Format the date/time value as a string
- datefmt_parse() - Parse string to a timestamp value
- datefmt_get_error_code() - Get the error code from last operation
- datefmt_get_error_message() - Get the error text from the last operation