bernd           Sun Dec  9 19:46:49 2001 EDT

  Modified files:              
    /phpdoc/en/functions        var.xml 
  Log:
  added describtion for unserialize_callback_function
  
Index: phpdoc/en/functions/var.xml
diff -u phpdoc/en/functions/var.xml:1.79 phpdoc/en/functions/var.xml:1.80
--- phpdoc/en/functions/var.xml:1.79    Sat Dec  8 16:36:13 2001
+++ phpdoc/en/functions/var.xml Sun Dec  9 19:46:49 2001
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!-- $Revision: 1.79 $ -->
+<!-- $Revision: 1.80 $ -->
  <reference id="ref.variables">
   <title>Variable Functions</title>
   <titleabbrev>Variables</titleabbrev>
@@ -1150,16 +1150,42 @@
      If an object was serialized, its methods are not preserved in the
      returned value.
     </simpara>
-   <note>
-    <para>
-     In PHP 3, methods are not preserved when unserializing a
-     serialized object. PHP 4 removes that limitation and restores
-     both properties and methods.  Please see the <link
-     linkend="language.oop.serialization">Serializing Objects</link>
-     section of <link linkend="language.oop">Classes and
-     Objects</link> or more information.
-    </para>
-   </note>
+    <simpara>
+     It's possible to set a callback-function which will be called,
+     if an undefined class should be instanciated during unserializing.
+     (to prevent getting an incomplete <type>object</type> "__PHP_Incomplete_Class".)
+     Use your php.ini, <function>ini_set</function> or .htaccess-file 
+     to define 'unserialize_callback_func'. 
+     Everytime an undefined class should be instanciated, it'll be called. 
+     To disable this feature just empty this global variable.
+     <para>
+      <example>
+       <title>unserialize_callback_func example</title>
+       <programlisting role="php">
+<![CDATA[
+$serialized_object='O:1:"a":1:{s:5:"value";s:3:"100";}';
+
+ini_set('unserialize_callback_func','mycallback'); // set your callback_function
+
+function mycallback($classname) {
+    // just include a file containing your classdefinition
+    // you get $classname to figure out which classdefinition is required
+}
+]]>
+       </programlisting>
+      </example>
+     </para>
+    </simpara>
+    <note>
+     <para>
+      In PHP 3, methods are not preserved when unserializing a
+      serialized object. PHP 4 removes that limitation and restores
+      both properties and methods.  Please see the <link
+      linkend="language.oop.serialization">Serializing Objects</link>
+      section of <link linkend="language.oop">Classes and
+      Objects</link> or more information.
+     </para>
+    </note>
     <para>
      <example>
       <title><function>unserialize</function> example</title>


Reply via email to