1
0
mirror of https://github.com/php/doc-en.git synced 2026-03-24 15:52:15 +01:00
Files
AllenJB 3a8c3e77df Enable runnable (WASM) examples for datetime (#4887)
* Enable runnable (WASM) examples for datetime
2025-10-31 10:32:20 +00:00

182 lines
4.7 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="datetime.gettimestamp" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>DateTimeInterface::getTimestamp</refname>
<refname>DateTimeImmutable::getTimestamp</refname>
<refname>DateTime::getTimestamp</refname>
<refname>date_timestamp_get</refname>
<refpurpose>Gets the Unix timestamp</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<para>&style.oop;</para>
<methodsynopsis role="DateTimeInterface">
<modifier>public</modifier> <type>int</type><methodname>DateTimeInterface::getTimestamp</methodname>
<void/>
</methodsynopsis>
<methodsynopsis role="DateTimeImmutable">
<modifier>public</modifier> <type>int</type><methodname>DateTimeImmutable::getTimestamp</methodname>
<void/>
</methodsynopsis>
<methodsynopsis role="DateTime">
<modifier>public</modifier> <type>int</type><methodname>DateTime::getTimestamp</methodname>
<void/>
</methodsynopsis>
<para>&style.procedural;</para>
<methodsynopsis>
<type>int</type><methodname>date_timestamp_get</methodname>
<methodparam><type>DateTimeInterface</type><parameter>object</parameter></methodparam>
</methodsynopsis>
<para>
Gets the Unix timestamp.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns the Unix timestamp representing the date.
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
If the timestamp cannot be represented as &integer;, a
<exceptionname>DateRangeError</exceptionname> is thrown. Prior to PHP
8.3.0, a <exceptionname>ValueError</exceptionname> is thrown. And, prior to
PHP 8.0.0, &false; was returned in this case. Still, the timestamp can be
retrieved as &string; by using
<methodname>DateTimeInterface::format</methodname> with the
<literal>U</literal> format.
</para>
</refsect1>
<refsect1 role="changelog"><!-- {{{ -->
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.3.0</entry>
<entry>
The out-of-range exception is now
<exceptionname>DateRangeError</exceptionname>.
</entry>
</row>
<row>
<entry>8.0.0</entry>
<entry>
These functions no longer return &false; on failure.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1><!-- }}} -->
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>DateTime::getTimestamp</function> example</title>
<para>&style.oop;</para>
<programlisting role="php">
<![CDATA[
<?php
$date = new DateTimeImmutable();
echo $date->getTimestamp();
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
1272509157
]]>
</screen>
<para>&style.procedural;</para>
<programlisting role="php">
<![CDATA[
<?php
$date = date_create();
echo date_timestamp_get($date);
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
1272509157
]]>
</screen>
</example>
<para>
If you need to retrieve the timestamp with millisecond or
microsecond resolution, then you can use the
<function>DateTimeInterface::format</function> function.
</para>
<example>
<title>Retrieving timestamp with milli and microsecond resolution</title>
<para>&style.oop;</para>
<programlisting role="php">
<![CDATA[
<?php
$date = new DateTimeImmutable();
$milli = (int) $date->format('Uv'); // Timestamp in milliseconds
$micro = (int) $date->format('Uu'); // Timestamp in microseconds
echo $milli, "\n", $micro, "\n";
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
1674057635586
1674057635586918
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>DateTime::setTimestamp</function></member>
<member><function>DateTimeImmutable::setTimestamp</function></member>
<member><function>DateTimeInterface::format</function></member>
</simplelist>
</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
-->