File: construct.xml

package info (click to toggle)
php-doc 20100521-2
  • links: PTS, VCS
  • area: main
  • in suites: squeeze, wheezy
  • size: 59,992 kB
  • ctags: 4,085
  • sloc: xml: 796,833; php: 21,338; cpp: 500; sh: 117; makefile: 58; awk: 28
file content (191 lines) | stat: -rw-r--r-- 5,103 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision: 299487 $ -->

<refentry xml:id="dateinterval.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
 <refnamediv>
  <refname>DateInterval::__construct</refname>
  <refpurpose>Creates new DateInterval object</refpurpose>
 </refnamediv>

 <refsect1 role="description">
  &reftitle.description;
  <constructorsynopsis role="oop">
   <modifier>public</modifier> <methodname>DateInterval::__construct</methodname>
   <methodparam><type>string</type><parameter>interval_spec</parameter></methodparam>
  </constructorsynopsis>
  <para>
   Creates new DateInterval object.
  </para>
 </refsect1>

 <refsect1 role="parameters">
  &reftitle.parameters;
  <para>
   <variablelist>
    <varlistentry>
     <term><parameter>interval_spec</parameter></term>
     <listitem>
      <para>
       Interval specification.
      </para>
      <para>
       The format starts with the letter <literal>P</literal>,
       for <quote>period.</quote>
       Each duration period is represented by an integer value
       followed by a period designator.
       If the duration contains time elements, that portion
       of the specification is preceded by the letter
       <literal>T</literal>.
      </para>
      <para>
       <table>
        <title>
         <parameter>interval_spec</parameter> Period Designators
        </title>
        <tgroup cols="2">
         <thead>
          <row>
           <entry>Period Designator</entry>
           <entry>Description</entry>
          </row>
         </thead>
         <tbody>
          <row>
           <entry><literal>Y</literal></entry>
           <entry>years</entry>
          </row>
          <row>
           <entry><literal>M</literal></entry>
           <entry>months</entry>
          </row>
          <row>
           <entry><literal>D</literal></entry>
           <entry>days</entry>
          </row>
          <row>
           <entry><literal>W</literal></entry>
           <entry>
            weeks. These get converted into days,
            so can not be combined with <literal>D</literal>.
           </entry>
          </row>
          <row>
           <entry><literal>H</literal></entry>
           <entry>hours</entry>
          </row>
          <row>
           <entry><literal>M</literal></entry>
           <entry>minutes</entry>
          </row>
          <row>
           <entry><literal>S</literal></entry>
           <entry>seconds</entry>
          </row>
         </tbody>
        </tgroup>
       </table>
      </para>
      <para>
       Here are some simple examples.
       Two days is <literal>P2D</literal>.
       Two seconds is <literal>PT2S</literal>.
       Six years and five minutes is <literal>P6YT5M</literal>.
      </para>
      <note>
       <para>
        The unit types must be entered from the largest
        scale unit on the left to the smallest scale unit
        on the right.
        So years before months, months before days,
        days before minutes, etc.
        Thus one year and four days must be represented as
        <literal>P1Y4D</literal>, not <literal>P4D1Y</literal>.
       </para>
      </note>
      <para>
       The specification can also be represented as a date time.
       A sample of one year and four days would be
       <literal>P0001-00-04T00:00:00</literal>.
       But the values in this format can not exceed a given period's
       roll-over-point (e.g. <literal>25</literal> hours is invalid).
      </para>
      <para>
       These formats are based on the <link
        xlink:href="&url.iso-8601.duration;">ISO 8601 duration
       specification</link>.
      </para>
     </listitem>
    </varlistentry>
   </variablelist>
  </para>
 </refsect1>

 <refsect1 role="examples">
  &reftitle.examples;
  <para>
   <example>
    <title><classname>DateInterval</classname> example</title>
    <programlisting role="php">
<![CDATA[
<?php

$interval = new DateInterval('P2Y4DT6H8M');
print_r($interval);

?>
]]>
    </programlisting>
    &example.outputs;
    <screen role="php">
<![CDATA[
DateInterval Object
(
    [y] => 2
    [m] => 0
    [d] => 4
    [h] => 6
    [i] => 8
    [s] => 0
    [invert] => 0
    [days] => 0
)
]]>
    </screen>
   </example>
  </para>
 </refsect1>

 <refsect1 role="seealso">
  &reftitle.seealso;
  <para>
   <simplelist>
    <member><function>DateInterval::format</function></member>
    <member><function>DateTime::add</function></member>
    <member><function>DateTime::sub</function></member>
    <member><function>DateTime::diff</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
-->