DATEFMT_CREATE(3) 1 DATEFMT_CREATE(3)
IntlDateFormatter::create - Create a date formatter
Object oriented style
SYNOPSIS
publicstatic IntlDateFormatter IntlDateFormatter::create (string $locale, int $datetype, int $timetype, [mixed $timezone = NULL],
[mixed $calendar = NULL], [string $pattern = ""])
DESCRIPTION
Object oriented style (constructor) IntlDateFormatter::__construct (string $locale, int $datetype, int $timetype, [mixed $timezone =
NULL], [mixed $calendar = NULL], [string $pattern = ""])
Procedural style
IntlDateFormatter datefmt_create (string $locale, int $datetype, int $timetype, [mixed $timezone = NULL], [mixed $calendar = NULL],
[string $pattern = ""])
Create a date formatter.
PARAMETERS
o $locale
- Locale to use when formatting or parsing or NULL to use the value specified in the ini setting intl.default_locale.
o $datetype
- Date type to use ( none, short, medium, long, full). This is one of the IntlDateFormatter constants. It can also be NULL, in
which case ICUs default date type will be used.
o $timetype
- Time type to use ( none, short, medium, long, full). This is one of the IntlDateFormatter constants. It can also be NULL, in
which case ICUs default time type will be used.
o $timezone
- Time zone ID. The default (and the one used if NULL is given) is the one returned by date_default_timezone_get(3) or, if appli-
cable, that of the IntlCalendar object passed for the $calendar parameter. This ID must be a valid identifier on ICUs database or
an ID representing an explicit offset, such as GMT-05:30. This can also be an IntlTimeZone or a DateTimeZone object.
o $calendar
- Calendar to use for formatting or parsing. The default value is NULL, which corresponds to IntlDateFormatter::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,
if NULL is given for the $timezone parameter, also the timezone used.
o $pattern
- Optional pattern to use when formatting or parsing. Possible patterns are documented at http://userguide.icu-project.org/format-
parse/datetime.
RETURN VALUES
The created IntlDateFormatter or FALSE in case of failure.
CHANGELOG
+-----------------+---------------------------------------------------+
| Version | |
| | |
| | Description |
| | |
+-----------------+---------------------------------------------------+
|5.5.0/PECL 3.0.0 | |
| | |
| | An IntlCalendar object is allowed for $calendar. |
| | Objects of type IntlTimeZone and DateTimeZone are |
| | allowed for $timezone. Invalid timezone identi- |
| | fiers (including empty strings) are no longer |
| | allowed for $timezone. If NULL is given for |
| | $timezone, the timezone identifier given by |
| | date_default_timezone_get(3) will be used instead |
| | of ICUs default. |
| | |
+-----------------+---------------------------------------------------+
EXAMPLES
Example #1
datefmt_create(3) 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);
?>
The above example will output:
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
SEE ALSO
datefmt_format(3), datefmt_parse(3), datefmt_get_error_code(3), datefmt_get_error_message(3).
PHP Documentation Group DATEFMT_CREATE(3)