1
0
mirror of https://github.com/php/doc-ja.git synced 2026-03-25 15:42:08 +01:00
Files
archived-doc-ja/reference/datetime/datetimeinterface/gettimestamp.xml
2025-11-01 00:38:03 +09:00

184 lines
5.1 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 3a8c3e77df070a046c9d5b56b68926ca2d7e5ee3 Maintainer: takagi Status: ready -->
<!-- Credits: mumumu -->
<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>Unix タイムスタンプを取得する</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>
Unix タイムスタンプを取得します。
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
その日付をあらわす Unix タイムスタンプを返します。
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
タイムスタンプが整数として表現できない場合、
<exceptionname>DateRangeError</exceptionname> がスローされます。
PHP 8.3.0 より前のバージョンでは、<exceptionname>ValueError</exceptionname>
がスローされていました。また、PHP 8.0.0 より前のバージョンでは同様の場合に
&false; を返していました。
さらに、<methodname>DateTimeInterface::format</methodname>
<literal>U</literal> を指定すると、タイムスタンプは文字列として取得できます。
</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>
範囲外の例外が
<exceptionname>DateRangeError</exceptionname> になりました。
</entry>
</row>
<row>
<entry>8.0.0</entry>
<entry>
これらの関数は、失敗時に &false; を返さなくなりました。
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1><!-- }}} -->
<refsect1 role="examples">
&reftitle.examples;
<example>
<title><function>DateTime::getTimestamp</function> の例</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>
ミリ秒やマイクロ秒の精度でタイムスタンプを取得したい場合、
<function>DateTimeInterface::format</function> が使えます。
</para>
<example>
<title>ミリ秒とマイクロ秒の精度でタイムスタンプを取得する</title>
<para>&style.oop;</para>
<programlisting role="php">
<![CDATA[
<?php
$date = new DateTimeImmutable();
$milli = (int) $date->format('Uv'); // タイムスタンプをミリ秒で取得
$micro = (int) $date->format('Uu'); // タイムスタンプをマイクロ秒で取得
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
-->