File: changelog.xml

package info (click to toggle)
php-doc 20140201-1
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 74,084 kB
  • ctags: 4,040
  • sloc: xml: 998,137; php: 20,812; cpp: 500; sh: 177; makefile: 63; awk: 28
file content (169 lines) | stat: -rw-r--r-- 5,815 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
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision: 332133 $ -->
<sect1 xml:id="language.oop5.changelog" xmlns="http://docbook.org/ns/docbook">
 <title>OOP Changelog</title>
 <para>
  Changes to the PHP 5 OOP model are logged here. Descriptions and other notes regarding
  these features are documented within the OOP 5 documentation.
 </para>
 <para>
  <informaltable>
   <tgroup cols="2">
    <thead>
     <row>
      <entry>&Version;</entry>
      <entry>&Description;</entry>
     </row>
    </thead>
    <tbody>
     <row>
      <entry>5.4.0</entry>
      <entry>
       Added: <link linkend="language.oop5.traits">traits</link>.
      </entry>
     </row>
     <row>
      <entry>5.4.0</entry>
      <entry>
       Changed: If an <link linkend="language.oop5.abstract">abstract</link> class
       defines a signature for the constructor it will now be enforced.
      </entry>
     </row>
     <row>
      <entry>5.3.3</entry>
      <entry>
       Changed: Methods with the same name as the last element of
       a <link linkend="language.namespaces">namespaced</link>
       class name will no longer be treated as <link
       linkend="language.oop5.decon">constructor</link>. This change doesn't
       affect non-namespaced classes.
      </entry>
     </row>
     <row>
      <entry>5.3.0</entry>
      <entry>
       Changed: Classes that implement interfaces with methods that have default 
       values in the prototype are no longer required to match the interface's default 
       value.
      </entry>
     </row>
     <row>
      <entry>5.3.0</entry>
      <entry>
       Changed: It's now possible to reference the class using a variable (e.g.,
       <literal>echo $classname::constant;</literal>).
       The variable's value can not be a keyword (e.g., <literal>self</literal>,
       <literal>parent</literal> or <literal>static</literal>).
      </entry>
     </row>
     <row>
      <entry>5.3.0</entry>
      <entry>
       Changed: An <constant>E_WARNING</constant> level error is issued if
       the magic <link linkend="language.oop5.overloading">overloading</link>
       methods are declared <link linkend="language.oop5.static">static</link>.
       It also enforces the public visibility requirement.
      </entry>
     </row>
     <row>
      <entry>5.3.0</entry>
      <entry>
       Changed: Prior to 5.3.0, exceptions thrown in the
       <function>__autoload</function> function could not be
       caught in the <link linkend="language.exceptions">catch</link> block, and
       would result in a fatal error. Exceptions now thrown in the __autoload function
       can be caught in the <link linkend="language.exceptions">catch</link> block, with
       one provison. If throwing a custom exception, then the custom exception class must
       be available. The __autoload function may be used recursively to autoload the
       custom exception class.
      </entry>
     </row>
     <row>
      <entry>5.3.0</entry>
      <entry>
       Added: The <link linkend="language.oop5.overloading">__callStatic</link> method.
      </entry>
     </row>
     <row>
      <entry>5.3.0</entry>
      <entry>
       Added: <link linkend="language.types.string.syntax.heredoc">heredoc</link>
       and <link linkend="language.types.string.syntax.heredoc">nowdoc</link>
       support for class <emphasis>const</emphasis> and property definitions.
       Note: heredoc values must follow the same rules as double-quoted strings,
       (e.g., no variables within).
      </entry>
     </row>
     <row>
      <entry>5.3.0</entry>
      <entry>
       Added: <link linkend="language.oop5.late-static-bindings">Late Static Bindings</link>.
      </entry>
     </row>
     <row>
      <entry>5.3.0</entry>
      <entry>
       Added: The <link linkend="object.invoke">__invoke()</link> method.
      </entry>
     </row>
     <row>
      <entry>5.2.0</entry>
      <entry>
       Changed: The <link linkend="object.tostring">__toString()</link>
       method was only called when it was directly combined with
       <function>echo</function> or <function>print</function>.
       But now, it is called in any string context (e.g. in
       <function>printf</function> with <literal>%s</literal> modifier) but not
       in other types contexts (e.g. with <literal>%d</literal> modifier).
       Since PHP 5.2.0, converting objects without a <literal>__toString</literal>
       method to string emits a <constant>E_RECOVERABLE_ERROR</constant> level error.
      </entry>
     </row>
     <row>
      <entry>5.1.3</entry>
      <entry>
       Changed: In previous versions of PHP 5, the use of <literal>var</literal>
       was considered deprecated and would issue an <constant>E_STRICT</constant>
       level error. It's no longer deprecated, therefore does not emit the error.
      </entry>
     </row>
     <row>
      <entry>5.1.0</entry>
      <entry>
       Changed: The <link linkend="object.set-state">__set_state()</link> static
       method is now called for classes exported by <function>var_export</function>.
      </entry>
     </row>
     <row>
      <entry>5.1.0</entry>
      <entry>
       Added: The <link linkend="object.isset">__isset()</link>
       and <link linkend="object.unset">__unset()</link> methods.
      </entry>
     </row>
    </tbody>
   </tgroup>
  </informaltable>
 </para>
</sect1>
 
<!-- 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
-->