<?php
class A
{
private $a;
private $b;
public function __construct($a)
{
$this->a = $a;
$this->b = $a;
}
public function __sleep()
{
throw new \Exception();
return array('a');
}
public function __wakeUp()
{
//$this->__construct($this->a);
}
public function getA()
{
return $this->a;
}
public function getB()
{
return $this->b;
}
}
$a = new A('a');
$serialized = serialize($a);
$unserialized = unserialize($serialized);
var_dump($serialized);
var_dump($unserialized);
var_dump($unserialized->getA());
var_dump($unserialized->getB());
Fatal error: Uncaught Exception in /in/k5hAS:16
Stack trace:
#0 [internal function]: A->__sleep()
#1 /in/k5hAS(37): serialize(Object(A))
#2 {main}
thrown in /in/k5hAS on line 16
Process exited with code 255.
Fatal error: Uncaught exception 'Exception' in /in/k5hAS:16
Stack trace:
#0 [internal function]: A->__sleep()
#1 /in/k5hAS(37): serialize(Object(A))
#2 {main}
thrown in /in/k5hAS on line 16
Process exited with code 255.
Output for 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/k5hAS on line 16
Fatal error: Uncaught exception 'Exception' in /in/k5hAS:16
Stack trace:
#0 [internal function]: A->__sleep()
#1 /in/k5hAS(37): serialize(Object(A))
#2 {main}
thrown in /in/k5hAS on line 16
Process exited with code 255.
Output for 5.0.3 - 5.0.4
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/k5hAS on line 16
Fatal error: Uncaught exception 'Exception' in /in/k5hAS:16
Stack trace:
#0 /in/k5hAS(16): A::__sleep()
#1 /in/k5hAS(37): A->__sleep()
#2 /in/k5hAS(37): serialize(Object(A))
#3 {main}
thrown in /in/k5hAS on line 16
Process exited with code 255.
Output for 5.0.0 - 5.0.2
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/k5hAS on line 16
Fatal error: Uncaught exception 'Exception' in /in/k5hAS:16
Stack trace:
#0 /in/k5hAS(37): A->__sleep()
#1 /in/k5hAS(37): serialize(Object(A))
#2 {main}
thrown in /in/k5hAS on line 16
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/k5hAS on line 5
Process exited with code 255.
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/k5hAS on line 5
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/k5hAS on line 5
Process exited with code 255.