1--TEST-- 2Custom unserialization of classes with no custom unserializer. 3--FILE-- 4<?php 5/* Prototype : proto string serialize(mixed variable) 6 * Description: Returns a string representation of variable (which can later be unserialized) 7 * Source code: ext/standard/var.c 8 * Alias to functions: 9 */ 10/* Prototype : proto mixed unserialize(string variable_representation) 11 * Description: Takes a string representation of variable and recreates it 12 * Source code: ext/standard/var.c 13 * Alias to functions: 14 */ 15 16$ser = 'C:1:"C":6:{dasdas}'; 17$a = unserialize($ser); 18eval('class C {}'); 19$b = unserialize($ser); 20 21var_dump($a, $b); 22 23echo "Done"; 24?> 25--EXPECTF-- 26Warning: Class __PHP_Incomplete_Class has no unserializer in %sserialization_objects_009.php on line %d 27 28Warning: Class C has no unserializer in %sserialization_objects_009.php on line %d 29object(__PHP_Incomplete_Class)#%d (1) { 30 ["__PHP_Incomplete_Class_Name"]=> 31 string(1) "C" 32} 33object(C)#%d (0) { 34} 35Done