Дипломные работы, курсовые проекты на заказ, контрольные работы на заказ

 
Начертательная геометрия Практикум по решению задач Геометрическое черчение Инженерная графика ЕСКД Кратные интегралы Математический анализ Матрицы Пределы Производные Векторная алгебра Интегральное исчисление ТФКП Ядерная физика Электростатика Магнетизм Оптика Информационные технологии
Учебник РНР
НазадВперёд

unserialize

(PHP 3>= 3.0.5, PHP 4)

unserialize - создаёт PHP-значение из хранимого представления.

Описание

mixed unserialize (string str)

unserialize() принимает одну сериализованную переменную (см. serialize()) и конвертирует её обратно в РНР-значение. Возвращается конвертированное значение, которое может быть integer, float, string, array или object.

Примечание: можно установить callback-функцийю, которая будет вызываться, если неопределённый/undefined класс должен быть инстанциирован в процессе десериализации (для предотвращения получения неполного object "__PHP_Incomplete_Class"). Используйте ваш php.ini, ini_set() или .htaccess-файл для определения 'unserialize_callback_func'. Каждый раз, когда undefined класс должен быть инстанциирован, вызывается эта установка. Для отключения этого просто сделайте эту установку пустой.

Пример 1. unserialize_callback_func
$serialized_object='O:1:"a":1:{s:5:"value";s:3:"100";}'; ini_set('unserialize_callback_func','mycallback'); 
// установить вашу callback_function function mycallback($classname) { // просто 
включите/include файл, содержащий ваше classdefinition // вы получите $classname 
для показа того, какое classdefinition необходимо }

Примечание: в PHP 3 методы не сохраняются при десериализации сериализованного объекта. В PHP 4 это ограничение устранено, и восстанавливаются как свойства, так и методы. См. дополнительно раздел Сериализация объектов в главе Классы и объекты.

Пример 2. unserialize()
// Здесь мы используем unserialize() для загрузки данных сессии в // массив 
$session_data из строки, выбранной из БД. // Этот пример использует одну из строк, 
описанных с помощью 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)) { // если выполнение или извлечение не прошло, инициализируется 
пустой массив $session_data = array(); } else { // мы не должны иметь сериализованных 
данных в $tmp[0]. $session_data = unserialize ($tmp[0]); if (!is_array ($session_data)) 
{ // если что-то прошло не так, инициализировать пустой массив $session_data = 
array(); } }

См. также serialize().


НазадОглавление Вперёд
strval Вверхunset