1
0
mirror of https://github.com/php/doc-zh.git synced 2026-03-24 07:02:15 +01:00
Files
archived-doc-zh/reference/datetime/dateinterval.xml
2024-06-14 17:02:55 +01:00

289 lines
9.1 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 9154789dfc9cb8aa5df644bfba5e86c2deba4cb8 Maintainer: yuanyuqiang Status: ready -->
<!-- CREDITS: mowangjuanzi, Luffy -->
<reference xml:id="class.dateinterval" role="class" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>DateInterval 类</title>
<titleabbrev>DateInterval</titleabbrev>
<partintro>
<!-- {{{ DateInterval intro -->
<section xml:id="dateinterval.intro">
&reftitle.intro;
<para>
表示时间间隔。
</para>
<para>
时间间隔表示固定量的时间(多少年,月,天,小时等),也可以表示一个字符串格式的相对时间,当表示相对时间的时候,字符串格式是
<classname>DateTimeImmutable</classname><classname>DateTime</classname> 类的构造函数所支持的格式。
</para>
<para>
更具体的说,<classname>DateInterval</classname>
类的对象中的信息是从一个日期/时间到另一个日期/时间的指令。这个过程并不始终可逆。
</para>
<para>
创建 <classname>DateInterval</classname> 对象的常用方法是通过
<methodname>DateTimeInterface::diff</methodname> 计算两个日期/时间对象之间的差异。
</para>
<para>
由于没有明确定义的方法来比较日期间隔,因此 <classname>DateInterval</classname>
实例是<link linkend="language.operators.comparison.incomparable">无法比较</link>的。
</para>
</section>
<!-- }}} -->
<section xml:id="dateinterval.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis class="class">
<ooclass>
<classname>DateInterval</classname>
</ooclass>
<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>
<fieldsynopsis>
<modifier>public</modifier>
<type>int</type>
<varname linkend="dateinterval.props.y">y</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>int</type>
<varname linkend="dateinterval.props.m">m</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>int</type>
<varname linkend="dateinterval.props.d">d</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>int</type>
<varname linkend="dateinterval.props.h">h</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>int</type>
<varname linkend="dateinterval.props.i">i</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>int</type>
<varname linkend="dateinterval.props.s">s</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>float</type>
<varname linkend="dateinterval.props.f">f</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>int</type>
<varname linkend="dateinterval.props.invert">invert</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>mixed</type>
<varname linkend="dateinterval.props.days">days</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>bool</type>
<varname linkend="dateinterval.props.from-string">from_string</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>string</type>
<varname linkend="dateinterval.props.date-string">date_string</varname>
</fieldsynopsis>
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.dateinterval')/db:refentry/db:refsect1[@role='description']/descendant::db:constructorsynopsis[@role='DateInterval'])">
<xi:fallback/>
</xi:include>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.dateinterval')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[@role='DateInterval'])">
<xi:fallback/>
</xi:include>
</classsynopsis>
<!-- }}} -->
</section>
<section xml:id="dateinterval.props">
&reftitle.properties;
<warning>
<para>
下列列出的有效属性依赖 PHP 版本,应视为 <emphasis>readonly</emphasis>
</para>
</warning>
<variablelist>
<varlistentry xml:id="dateinterval.props.y">
<term><varname>y</varname></term>
<listitem>
<para>
多少年。
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="dateinterval.props.m">
<term><varname>m</varname></term>
<listitem>
<para>
多少月。
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="dateinterval.props.d">
<term><varname>d</varname></term>
<listitem>
<para>
多少天。
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="dateinterval.props.h">
<term><varname>h</varname></term>
<listitem>
<para>
多少小时。
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="dateinterval.props.i">
<term><varname>i</varname></term>
<listitem>
<para>
多少分钟。
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="dateinterval.props.s">
<term><varname>s</varname></term>
<listitem>
<para>
多少秒。
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="dateinterval.props.f">
<term><varname>f</varname></term>
<listitem>
<para>
多少微秒。
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="dateinterval.props.invert">
<term><varname>invert</varname></term>
<listitem>
<para>
如果是负的时间段,则为 <literal>1</literal>,否则为
<literal>0</literal>。请参见 <methodname>DateInterval::format</methodname>
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="dateinterval.props.days">
<term><varname>days</varname></term>
<listitem>
<para>
如果 DateInterval 对象是由 <methodname>DateTimeImmutable::diff</methodname>
或者 <function>DateTime::diff</function>
函数创建的,那么它表示开始日期和结束日期之间的完整天数。否则,<varname>days</varname> 属性为 &false;
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="dateinterval.props.from-string">
<term><varname>from_string</varname></term>
<listitem>
<para>
如果 DateInterval 对象是通过 <methodname>DateInterval::createFromDateString</methodname>
创建,则此属性值设为 &true; 并且 <varname>date_string</varname> 属性将填充数据。否则,此值设为
&false; 且为从 <varname>y</varname><varname>f</varname><varname>invert</varname>
<varname>days</varname> 属性填充数据。
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="dateinterval.props.date-string">
<term><varname>date_string</varname></term>
<listitem>
<para>
字符串,用作 <methodname>DateInterval::createFromDateString</methodname> 的参数。
</para>
</listitem>
</varlistentry>
</variablelist>
</section>
<section role="changelog" xml:id="dateinterval.changelog"><!-- {{{ -->
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.2.0</entry>
<entry>
为使用 <methodname>DateInterval::createFromDateString</methodname>
方法创建的 <classname>DateInterval</classname> 实例添加了
<varname>from_string</varname><varname>date_string</varname> 属性。
</entry>
</row>
<row>
<entry>8.2.0</entry>
<entry>
仅从 <literal>y</literal><literal>f</literal><literal>invert</literal>
<literal>days</literal> 将可见。
</entry>
</row>
<row>
<entry>7.4.0</entry>
<entry>
现在 <classname>DateInterval</classname> 无法比较;之前所有的
<classname>DateInterval</classname> 实例都认为相等。
</entry>
</row>
<row>
<entry>7.1.0</entry>
<entry>增加 <varname>f</varname> 属性。</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</section><!-- }}} -->
</partintro>
&reference.datetime.entities.dateinterval;
</reference>
<!-- 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
-->