<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Create a date formatter</title> </head> <body><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="class.intldateformatter.html">IntlDateFormatter</a></div> <div class="next" style="text-align: right; float: right;"><a href="intldateformatter.format.html">IntlDateFormatter::format</a></div> <div class="up"><a href="class.intldateformatter.html">IntlDateFormatter</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div><hr /><div id="intldateformatter.create" class="refentry"> <div class="refnamediv"> <h1 class="refname">IntlDateFormatter::create</h1> <h1 class="refname">datefmt_create</h1> <h1 class="refname">IntlDateFormatter::__construct</h1> <p class="verinfo">(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)</p><p class="refpurpose"><span class="refname">IntlDateFormatter::create</span> -- <span class="refname">datefmt_create</span> -- <span class="refname">IntlDateFormatter::__construct</span> — <span class="dc-title">Create a date formatter</span></p> </div> <div class="refsect1 description" id="refsect1-intldateformatter.create-description"> <h3 class="title">Description</h3> <p class="para"> Object oriented style </p> <div class="methodsynopsis dc-description"> <span class="modifier">public</span> <span class="modifier">static</span> <span class="type"><a href="class.intldateformatter.html" class="type IntlDateFormatter">IntlDateFormatter</a></span> <span class="methodname"><strong>IntlDateFormatter::create</strong></span> ( <span class="methodparam"><span class="type">string</span> <code class="parameter">$locale</code></span> , <span class="methodparam"><span class="type">int</span> <code class="parameter">$datetype</code></span> , <span class="methodparam"><span class="type">int</span> <code class="parameter">$timetype</code></span> [, <span class="methodparam"><span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span> <code class="parameter">$timezone</code><span class="initializer"> = NULL</span></span> [, <span class="methodparam"><span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span> <code class="parameter">$calendar</code><span class="initializer"> = NULL</span></span> [, <span class="methodparam"><span class="type">string</span> <code class="parameter">$pattern</code><span class="initializer"> = ''</span></span> ]]] )</div> <p class="para rdfs-comment"> Object oriented style (constructor) </p> <div class="constructorsynopsis dc-description"> <span class="modifier">public</span> <span class="methodname"><strong>IntlDateFormatter::__construct()</strong></span> ( <span class="methodparam"><span class="type">string</span> <code class="parameter">$locale</code></span> , <span class="methodparam"><span class="type">int</span> <code class="parameter">$datetype</code></span> , <span class="methodparam"><span class="type">int</span> <code class="parameter">$timetype</code></span> [, <span class="methodparam"><span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span> <code class="parameter">$timezone</code><span class="initializer"> = NULL</span></span> [, <span class="methodparam"><span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span> <code class="parameter">$calendar</code><span class="initializer"> = NULL</span></span> [, <span class="methodparam"><span class="type">string</span> <code class="parameter">$pattern</code><span class="initializer"> = ''</span></span> ]]] )</div> <p class="para rdfs-comment"> Procedural style </p> <div class="methodsynopsis dc-description"> <span class="type"><a href="class.intldateformatter.html" class="type IntlDateFormatter">IntlDateFormatter</a></span> <span class="methodname"><strong>datefmt_create</strong></span> ( <span class="methodparam"><span class="type">string</span> <code class="parameter">$locale</code></span> , <span class="methodparam"><span class="type">int</span> <code class="parameter">$datetype</code></span> , <span class="methodparam"><span class="type">int</span> <code class="parameter">$timetype</code></span> [, <span class="methodparam"><span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span> <code class="parameter">$timezone</code><span class="initializer"> = NULL</span></span> [, <span class="methodparam"><span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span> <code class="parameter">$calendar</code><span class="initializer"> = NULL</span></span> [, <span class="methodparam"><span class="type">string</span> <code class="parameter">$pattern</code><span class="initializer"> = ''</span></span> ]]] )</div> <p class="para rdfs-comment"> Create a date formatter. </p> </div> <div class="refsect1 parameters" id="refsect1-intldateformatter.create-parameters"> <h3 class="title">Parameters</h3> <p class="para"> <dl> <dt> <span class="term"><em><code class="parameter">locale</code></em></span> <dd> <p class="para"> Locale to use when formatting or parsing or <strong><code>NULL</code></strong> to use the value specified in the ini setting <a href="intl.configuration.html#ini.intl.default-locale" class="link">intl.default_locale</a>. </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">datetype</code></em></span> <dd> <p class="para"> Date type to use (<strong><code>none</code></strong>, <strong><code>short</code></strong>, <strong><code>medium</code></strong>, <strong><code>long</code></strong>, <strong><code>full</code></strong>). This is one of the <a href="class.intldateformatter.html#intl.intldateformatter-constants" class="link">IntlDateFormatter constants</a>. It can also be <strong><code>NULL</code></strong>, in which case ICUʼs default date type will be used. </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">timetype</code></em></span> <dd> <p class="para"> Time type to use (<strong><code>none</code></strong>, <strong><code>short</code></strong>, <strong><code>medium</code></strong>, <strong><code>long</code></strong>, <strong><code>full</code></strong>). This is one of the <a href="class.intldateformatter.html#intl.intldateformatter-constants" class="link">IntlDateFormatter constants</a>. It can also be <strong><code>NULL</code></strong>, in which case ICUʼs default time type will be used. </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">timezone</code></em></span> <dd> <p class="para"> Time zone ID. The default (and the one used if <strong><code>NULL</code></strong> is given) is the one returned by <span class="function"><a href="function.date-default-timezone-get.html" class="function">date_default_timezone_get()</a></span> or, if applicable, that of the <a href="class.intlcalendar.html" class="classname">IntlCalendar</a> object passed for the <em><code class="parameter">calendar</code></em> parameter. This ID must be a valid identifier on ICUʼs database or an ID representing an explicit offset, such as <em>GMT-05:30</em>. </p> <p class="para"> This can also be an <a href="class.intltimezone.html" class="classname">IntlTimeZone</a> or a <a href="class.datetimezone.html" class="classname">DateTimeZone</a> object. </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">calendar</code></em></span> <dd> <p class="para"> Calendar to use for formatting or parsing. The default value is <strong><code>NULL</code></strong>, which corresponds to <strong><code>IntlDateFormatter::GREGORIAN</code></strong>. This can either be one of the <a href="class.intldateformatter.html#intl.intldateformatter-constants.calendartypes" class="link">IntlDateFormatter calendar constants</a> or an <a href="class.intlcalendar.html" class="classname">IntlCalendar</a>. Any <a href="class.intlcalendar.html" class="classname">IntlCalendar</a> object passed will be clone; it will not be changed by the <a href="class.intldateformatter.html" class="classname">IntlDateFormatter</a>. This will determine the calendar type used (gregorian, islamic, persian, etc.) and, if <strong><code>NULL</code></strong> is given for the <em><code class="parameter">timezone</code></em> parameter, also the timezone used. </p> </dd> </dt> <dt> <span class="term"><em><code class="parameter">pattern</code></em></span> <dd> <p class="para"> Optional pattern to use when formatting or parsing. Possible patterns are documented at <a href="http://userguide.icu-project.org/formatparse/datetime" class="link external">» http://userguide.icu-project.org/formatparse/datetime</a>. </p> </dd> </dt> </dl> </p> </div> <div class="refsect1 returnvalues" id="refsect1-intldateformatter.create-returnvalues"> <h3 class="title">Return Values</h3> <p class="para"> The created <a href="class.intldateformatter.html" class="classname">IntlDateFormatter</a> or <strong><code>FALSE</code></strong> in case of failure. </p> </div> <div class="refsect1 changelog" id="refsect1-intldateformatter.create-changelog"> <h3 class="title">Changelog</h3> <p class="para"> <table class="doctable informaltable"> <thead> <tr> <th>Version</th> <th>Description</th> </tr> </thead> <tbody class="tbody"> <tr> <td>5.5.0/PECL 3.0.0</td> <td> <p class="para"> An <a href="class.intlcalendar.html" class="classname">IntlCalendar</a> object is allowed for <em><code class="parameter">calendar</code></em>. </p> <p class="para"> Objects of type <a href="class.intltimezone.html" class="classname">IntlTimeZone</a> and <a href="class.datetimezone.html" class="classname">DateTimeZone</a> are allowed for <em><code class="parameter">timezone</code></em>. </p> <p class="para"> Invalid timezone identifiers (including empty strings) are no longer allowed for <em><code class="parameter">timezone</code></em>. </p> <p class="para"> If <strong><code>NULL</code></strong> is given for <em><code class="parameter">timezone</code></em>, the timezone identifier given by <span class="function"><a href="function.date-default-timezone-get.html" class="function">date_default_timezone_get()</a></span> will be used instead of ICUʼs default. </p> </td> </tr> </tbody> </table> </p> </div> <div class="refsect1 examples" id="refsect1-intldateformatter.create-examples"> <h3 class="title">Examples</h3> <div class="example" id="example-2625"> <p><strong>Example #1 <span class="function"><strong>datefmt_create()</strong></span> example</strong></p> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br />$fmt </span><span style="color: #007700">= </span><span style="color: #0000BB">datefmt_create</span><span style="color: #007700">( </span><span style="color: #DD0000">"en_US" </span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">, </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'America/Los_Angeles'</span><span style="color: #007700">, </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">GREGORIAN </span><span style="color: #007700">);<br />echo </span><span style="color: #DD0000">"First Formatted output is "</span><span style="color: #007700">.</span><span style="color: #0000BB">datefmt_format</span><span style="color: #007700">( </span><span style="color: #0000BB">$fmt </span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$fmt </span><span style="color: #007700">= </span><span style="color: #0000BB">datefmt_create</span><span style="color: #007700">( </span><span style="color: #DD0000">"de-DE" </span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">, </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'America/Los_Angeles'</span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">GREGORIAN </span><span style="color: #007700">);<br />echo </span><span style="color: #DD0000">"Second Formatted output is "</span><span style="color: #007700">.</span><span style="color: #0000BB">datefmt_format</span><span style="color: #007700">( </span><span style="color: #0000BB">$fmt </span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$fmt </span><span style="color: #007700">= </span><span style="color: #0000BB">datefmt_create</span><span style="color: #007700">( </span><span style="color: #DD0000">"en_US" </span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">, </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'America/Los_Angeles'</span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">GREGORIAN </span><span style="color: #007700">,</span><span style="color: #DD0000">"MM/dd/yyyy"</span><span style="color: #007700">);<br />echo </span><span style="color: #DD0000">"First Formatted output with pattern is "</span><span style="color: #007700">.</span><span style="color: #0000BB">datefmt_format</span><span style="color: #007700">( </span><span style="color: #0000BB">$fmt </span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$fmt </span><span style="color: #007700">= </span><span style="color: #0000BB">datefmt_create</span><span style="color: #007700">( </span><span style="color: #DD0000">"de-DE" </span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">, </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'America/Los_Angeles'</span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">GREGORIAN </span><span style="color: #007700">,</span><span style="color: #DD0000">"MM/dd/yyyy"</span><span style="color: #007700">);<br />echo </span><span style="color: #DD0000">"Second Formatted output with pattern is "</span><span style="color: #007700">.</span><span style="color: #0000BB">datefmt_format</span><span style="color: #007700">( </span><span style="color: #0000BB">$fmt </span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> </div> <div class="example" id="example-2626"> <p><strong>Example #2 OO example</strong></p> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br />$fmt </span><span style="color: #007700">= new </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">( </span><span style="color: #DD0000">"en_US" </span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">, </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'America/Los_Angeles'</span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">GREGORIAN </span><span style="color: #007700">);<br />echo </span><span style="color: #DD0000">"First Formatted output is "</span><span style="color: #007700">.</span><span style="color: #0000BB">$fmt</span><span style="color: #007700">-></span><span style="color: #0000BB">format</span><span style="color: #007700">(</span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$fmt </span><span style="color: #007700">= new </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">( </span><span style="color: #DD0000">"de-DE" </span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">, </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">, <br /> </span><span style="color: #DD0000">'America/Los_Angeles'</span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">GREGORIAN </span><span style="color: #007700">);<br />echo </span><span style="color: #DD0000">"Second Formatted output is "</span><span style="color: #007700">.</span><span style="color: #0000BB">$fmt</span><span style="color: #007700">-></span><span style="color: #0000BB">format</span><span style="color: #007700">(</span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$fmt </span><span style="color: #007700">= new </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">( </span><span style="color: #DD0000">"en_US" </span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">, </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">, <br /> </span><span style="color: #DD0000">'America/Los_Angeles'</span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">GREGORIAN </span><span style="color: #007700">,</span><span style="color: #DD0000">"MM/dd/yyyy"</span><span style="color: #007700">);<br />echo </span><span style="color: #DD0000">"First Formatted output with pattern is "</span><span style="color: #007700">.</span><span style="color: #0000BB">$fmt</span><span style="color: #007700">-></span><span style="color: #0000BB">format</span><span style="color: #007700">(</span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$fmt </span><span style="color: #007700">= new </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">( </span><span style="color: #DD0000">"de-DE" </span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">, </span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">FULL</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'America/Los_Angeles'</span><span style="color: #007700">,</span><span style="color: #0000BB">IntlDateFormatter</span><span style="color: #007700">::</span><span style="color: #0000BB">GREGORIAN </span><span style="color: #007700">, </span><span style="color: #DD0000">"MM/dd/yyyy"</span><span style="color: #007700">);<br />echo </span><span style="color: #DD0000">"Second Formatted output with pattern is "</span><span style="color: #007700">.</span><span style="color: #0000BB">$fmt</span><span style="color: #007700">-></span><span style="color: #0000BB">format</span><span style="color: #007700">(</span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> </div> <p class="para">The above example will output:</p> <div class="example-contents screen"> <div class="cdata"><pre> 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 </pre></div> </div> </div> <div class="refsect1 seealso" id="refsect1-intldateformatter.create-seealso"> <h3 class="title">See Also</h3> <p class="para"> <ul class="simplelist"> <li class="member"> <span class="function"><a href="intldateformatter.format.html" class="function" rel="rdfs-seeAlso">datefmt_format()</a> - Format the date/time value as a string</span></li> <li class="member"> <span class="function"><a href="intldateformatter.parse.html" class="function" rel="rdfs-seeAlso">datefmt_parse()</a> - Parse string to a timestamp value</span></li> <li class="member"> <span class="function"><a href="intldateformatter.geterrorcode.html" class="function" rel="rdfs-seeAlso">datefmt_get_error_code()</a> - Get the error code from last operation</span></li> <li class="member"> <span class="function"><a href="intldateformatter.geterrormessage.html" class="function" rel="rdfs-seeAlso">datefmt_get_error_message()</a> - Get the error text from the last operation.</span></li> </ul> </p> </div> </div><hr /><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="class.intldateformatter.html">IntlDateFormatter</a></div> <div class="next" style="text-align: right; float: right;"><a href="intldateformatter.format.html">IntlDateFormatter::format</a></div> <div class="up"><a href="class.intldateformatter.html">IntlDateFormatter</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div></body></html>