<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="intlcalendar.fromdatetime" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
 <refnamediv>
  <refname>IntlCalendar::fromDateTime</refname>
  <refpurpose>Create an IntlCalendar from a DateTime object or string</refpurpose>
 </refnamediv>

 <refsect1 role="description">
  &reftitle.description;
  <para>
   &style.oop;
  </para>
  <methodsynopsis role="IntlCalendar">
   <modifier>public</modifier> <modifier>static</modifier> <type class="union"><type>IntlCalendar</type><type>null</type></type><methodname>IntlCalendar::fromDateTime</methodname>
   <methodparam><type class="union"><type>DateTime</type><type>string</type></type><parameter>datetime</parameter></methodparam>
   <methodparam choice="opt"><type class="union"><type>string</type><type>null</type></type><parameter>locale</parameter><initializer>&null;</initializer></methodparam>
  </methodsynopsis>
  <para>
   &style.procedural;
  </para>
  <methodsynopsis>
   <type class="union"><type>IntlCalendar</type><type>null</type></type><methodname>intlcal_from_date_time</methodname>
   <methodparam><type class="union"><type>DateTime</type><type>string</type></type><parameter>datetime</parameter></methodparam>
   <methodparam choice="opt"><type class="union"><type>string</type><type>null</type></type><parameter>locale</parameter><initializer>&null;</initializer></methodparam>
  </methodsynopsis>
  <para>
   Creates an <classname>IntlCalendar</classname> object either from a
   <classname>DateTime</classname> object or from a string from which a
   <classname>DateTime</classname> object can be built.
  </para>
  <para>
   The new calendar will represent not only the same instant as the
   given <classname>DateTime</classname> (subject to precision loss for dates
   very far into the past or future), but also the same timezone (subject to
   the caveat that different timezone databases will be used, and therefore
   the results may differ).
  </para>
 </refsect1>

 <refsect1 role="parameters">
  &reftitle.parameters;
  <variablelist>
   <varlistentry>
    <term><parameter>datetime</parameter></term>
    <listitem>
     <para>
      A <classname>DateTime</classname> object or a <type>string</type> that
      can be passed to <function>DateTime::__construct</function>.
     </para>
    </listitem>
   </varlistentry>
  </variablelist>
 </refsect1>

 <refsect1 role="returnvalues">
  &reftitle.returnvalues;
  <para>
   The created <classname>IntlCalendar</classname> object or &null; in case of
   failure. If a <type>string</type> is passed, any exception that occurs
   inside the <classname>DateTime</classname> constructor is propagated.
  </para>
 </refsect1>


 <refsect1 role="examples">
  &reftitle.examples;
  <para>
   <example>
   <title><function>IntlCalendar::fromDateTime</function></title>
    <programlisting role="php">
<![CDATA[
<?php
ini_set('date.timezone', 'Europe/Lisbon');

//same as IntlCalendar::fromDateTime(new DateTime(...))
$cal1 = IntlCalendar::fromDateTime('2013-02-28 00:01:02 Europe/Berlin');

//Note the timezone is Europe/Berlin, not the default Europe/Lisbon
echo IntlDateFormatter::formatObject($cal1, 'yyyy MMMM d HH:mm:ss VVVV', 'de_DE'), "\n";

]]>
    </programlisting>
    &example.outputs;
    <screen>
<![CDATA[
2013 Februar 28 00:01:02 Deutschland Zeit
]]>
    </screen>
   </example>
  </para>
 </refsect1>

</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->
