<?xml version="1.0" encoding="utf-8"?> <!-- $Revision$ --> <!-- Generated by xml_proto.php v2.2. Found in /scripts directory of phpdoc. --> <refentry xml:id="function.px-timestamp2string" xmlns="http://docbook.org/ns/docbook"> <refnamediv> <refname>px_timestamp2string</refname> <refpurpose> Converts the timestamp into a string. </refpurpose> </refnamediv> <refsect1 role="description"> &reftitle.description; <methodsynopsis> <type>string</type><methodname>px_timestamp2string</methodname> <methodparam><type>resource</type><parameter>pxdoc</parameter></methodparam> <methodparam><type>float</type><parameter>value</parameter></methodparam> <methodparam><type>string</type><parameter>format</parameter></methodparam> </methodsynopsis> <para> Turns a timestamp as it stored in the paradox file into human readable format. Paradox timestamps are the number of miliseconds since 0001-01-02. This function is just for convenience. It can be easily replaced by some math and the calendar functions as demonstrated in the following example. </para> </refsect1> <refsect1 role="parameters"> &reftitle.parameters; <para> <variablelist> <varlistentry> <term><parameter>pxdoc</parameter></term> <listitem> <para> Resource identifier of the paradox database. </para> </listitem> </varlistentry> <varlistentry> <term><parameter>value</parameter></term> <listitem> <para> Value as stored in paradox database field of type PX_FIELD_TIME, or PX_FIELD_TIMESTAMP. </para> </listitem> </varlistentry> <varlistentry> <term><parameter>format</parameter></term> <listitem> <para> String format similar to the format used by <function>date</function>. The placeholders support by this function is a subset of those supported by <function>date</function> (Y, y, m, n, d, j, H, h, G, g, i, s, A, a, L). </para> </listitem> </varlistentry> </variablelist> </para> </refsect1> <refsect1 role="returnvalues"> &reftitle.returnvalues; <para> &return.success; </para> </refsect1> <!-- Use when ERRORS exist <refsect1 role="errors"> &reftitle.errors; <para> When does this function throw E_* level errors, or exceptions? </para> </refsect1> --> <!-- Use when a CHANGELOG exists <refsect1 role="changelog"> &reftitle.changelog; <para> <informaltable> <tgroup cols="2"> <thead> <row> <entry>&Version;</entry> <entry>&Description</entry> </row> </thead> <tbody> <row> <entry>Enter the PHP version of change here <entry>Description of change </row> </tbody> </tgroup> </informaltable> </para> </refsect1> --> <refsect1 role="examples"> &reftitle.examples; <para> <example> <title>Turn a paradox timestamp into a human readable form</title> <programlisting role="php"> <![CDATA[ <?php $px = px_new(); /* make up a date as it could be stored in */ /* a date field of a paradox db. */ /* 700000 days since 1.1.0000. */ $days = 700000; /* Use the calendar functions to print a */ /* human readable format of the date */ echo jdtogregorian($days+1721425)."\n"; /* Turn it into a timestamp as it stored in a paradox database */ /* Timestamps are stored in miliseconds since 0001-01-02 */ $stamp = $days * 86400.0 * 1000.0; /* Add one hour */ $stamp += 3600000.0; /* The following will output '7/15/1917 01:00:00'. */ echo px_timestamp2string($px, $stamp, "n/d/Y H:i:s")."\n"; px_delete($px); ?> ]]> </programlisting> &example.outputs; <screen> <![CDATA[ 7/15/1917 7/15/1917 01:00:00 ]]> </screen> </example> </para> <para> The Julian day count as passed to <function>jdtogregorian</function> has a different base of 1.1.4714 b.c. and must therefore be calculated by adding 1721425 to the day count used in the paradox file. Turning the day count into a timestamp is easily done by multiplying with 86400000.0 to obtain miliseconds. </para> </refsect1> <refsect1 role="seealso"> &reftitle.seealso; <para> <simplelist> <member><function>px_date2string</function></member> <member><function>jdtogregorian</function></member> </simplelist> </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 -->