| |
unserialize (PHP 3>= 3.0.5, PHP 4 ) unserialize --
Creates a PHP value from a stored representation
Descriptionmixed unserialize ( string str [, string callback])
unserialize() takes a single serialized
variable (see serialize()) and converts it
back into a PHP value. The converted value is returned, and can
be an integer, float,
string, array or object.
In case the passed string is not unserializeable, FALSE is returned.
unserialize_callback_func directive:
It's possible to set a callback-function which will be called,
if an undefined class should be instantiated during unserializing.
(to prevent getting an incomplete object "__PHP_Incomplete_Class".)
Use your php.ini, ini_set() or .htaccess
to define 'unserialize_callback_func'. Everytime an undefined class
should be instantiated, it'll be called. To disable this feature just
empty this setting. Also note that the directive
unserialize_callback_func directive became
available in PHP 4.2.0.
Note:
The callback parameter was added in PHP 4.2.0
If the variable being unserialized is an object, after successfully
reconstructing the object PHP will automatically attempt to call the
__wakeup() member function (if it exists).
Example 1. unserialize_callback_func example <?php
$serialized_object='O:1:"a":1:{s:5:"value";s:3:"100";}';
// unserialize_callback_func directive available as of PHP 4.2.0
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
}
?> |
|
Note:
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 Serializing Objects
section of Classes and
Objects or more information.
Example 2. unserialize() example <?php
// Here, we use unserialize() to load session data to the
// $session_data array from the string selected from a database.
// This example complements the one described with serialize().
$conn = odbc_connect ("webdb", "php", "chicken");
$stmt = odbc_prepare ($conn, "SELECT data FROM sessions WHERE id = ?");
$sqldata = array ($PHP_AUTH_USER);
if (!odbc_execute ($stmt, &$sqldata) || !odbc_fetch_into ($stmt, &$tmp)) {
// if the execute or fetch fails, initialize to empty array
$session_data = array();
} else {
// we should now have the serialized data in $tmp[0].
$session_data = unserialize ($tmp[0]);
if (!is_array ($session_data)) {
// something went wrong, initialize to empty array
$session_data = array();
}
}
?> |
|
See also serialize().
|
Ecommerce shopping carts
Events management projects
Affiliates systems
Large sized web projects
Real estate and vacation rental projects
Asp.net and c# projects
|