vrana           Thu Nov  3 05:45:49 2005 EDT

  Modified files:              
    /phpdoc/en/language/oop5    magic.xml 
    /phpdoc/en/reference/var/functions  var-export.xml 
  Log:
  __set_state magic method (bug #33203)
  
http://cvs.php.net/diff.php/phpdoc/en/language/oop5/magic.xml?r1=1.11&r2=1.12&ty=u
Index: phpdoc/en/language/oop5/magic.xml
diff -u phpdoc/en/language/oop5/magic.xml:1.11 
phpdoc/en/language/oop5/magic.xml:1.12
--- phpdoc/en/language/oop5/magic.xml:1.11      Tue Sep 20 08:50:10 2005
+++ phpdoc/en/language/oop5/magic.xml   Thu Nov  3 05:45:47 2005
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!-- $Revision: 1.11 $ -->
+<!-- $Revision: 1.12 $ -->
  <sect1 id="language.oop5.magic">
   <title>Magic Methods</title>
   <para>
@@ -16,6 +16,7 @@
    <literal>__sleep</literal>,
    <literal>__wakeup</literal>,
    <literal>__toString</literal>,
+   <literal>__set_state</literal>,
    <link linkend="language.oop5.cloning">__clone</link> and
    <link linkend="language.oop5.autoload">__autoload</link>
    are magical in PHP classes. You
@@ -166,6 +167,18 @@
     </programlisting>
    </example>
   </sect2>
+
+  <sect2 id="language.oop5.magic.set-state">
+   <title><literal>__set_state</literal></title>
+   <para>
+    This <link linkend="language.oop5.static">static</link> method is called
+    for classes exported by <function>var_export</function> since PHP 5.1.0.
+   </para>
+   <para>
+    The only parameter of this method is an array containing exported
+    properties in the form <literal>array('property' => value, ...)</literal>.
+   </para>
+  </sect2>
  </sect1>
  
 <!-- Keep this comment at the end of the file
http://cvs.php.net/diff.php/phpdoc/en/reference/var/functions/var-export.xml?r1=1.10&r2=1.11&ty=u
Index: phpdoc/en/reference/var/functions/var-export.xml
diff -u phpdoc/en/reference/var/functions/var-export.xml:1.10 
phpdoc/en/reference/var/functions/var-export.xml:1.11
--- phpdoc/en/reference/var/functions/var-export.xml:1.10       Tue Jun  7 
18:35:49 2005
+++ phpdoc/en/reference/var/functions/var-export.xml    Thu Nov  3 05:45:48 2005
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!-- $Revision: 1.10 $ -->
+<!-- $Revision: 1.11 $ -->
 <!-- splitted from ./en/functions/var.xml, last change in rev 1.6 -->
 <refentry id="function.var-export">
  <refnamediv>
@@ -55,6 +55,32 @@
   </para>
  </refsect1>
 
+ <refsect1 role="changelog">
+  &reftitle.changelog;
+  <para>
+   <informaltable>
+    <tgroup cols="2">
+     <thead>
+      <row>
+       <entry>&Version;</entry>
+       <entry>&Description;</entry>
+      </row>
+     </thead>
+     <tbody>
+      <row>
+       <entry>5.1.0</entry>
+       <entry>
+        Possibility to export classes and arrays containing classes using the
+        <link linkend="language.oop5.magic.set-state">__set_state</link> magic
+        method.
+       </entry>
+      </row>
+     </tbody>
+    </tgroup>
+   </informaltable>
+  </para>
+ </refsect1>
+ 
  <refsect1 role="examples">
   &reftitle.examples;
   <para>
@@ -102,14 +128,37 @@
     </screen>
    </example>
   </para>
+  <para>
+   <example>
+    <title>Exporting classes since PHP 5.1.0</title>
+    <programlisting role="php">
+<![CDATA[
+<?php
+class A { public $var; }
+$a = new A;
+$a->var = 5;
+var_export($a);
+?>
+]]>
+    </programlisting>
+    &example.outputs;
+    <screen>
+<![CDATA[
+A::__set_state(array(
+   'var' => 5,
+))
+]]>
+    </screen>
+   </example>
+  </para>
  </refsect1>
 
  <refsect1 role="notes">
   &reftitle.notes;
   <note>
    <para>
-    Variables of type <type>resource</type> and arrays or objects containing
-    objects couldn't be exported by this function.
+    Variables of type <type>resource</type> couldn't be exported by this
+    function.
    </para>
   </note>
  </refsect1>

Reply via email to