1. <?php
    2. class SleepWakeUp
    3. {
    4. public $name;
    5. public function __construct($name)
    6. {
    7. $this->name = $name;
    8. }
    9. public function getName()
    10. {
    11. echo $this->name . PHP_EOL;
    12. }
    13. /**
    14. * serialize() 函数时触发
    15. * @throws Exception
    16. */
    17. public function __sleep()
    18. {
    19. throw new \Exception('34', 111);
    20. }
    21. /**
    22. * unserialize() 触发
    23. * @throws Exception
    24. */
    25. public function __wakeUp()
    26. {
    27. throw new \Exception('34', 111);
    28. }
    29. }
    30. $aa = new SleepWakeUp('long');
    31. $bb = serialize($aa);
    32. $cc = unserialize($bb);
    33. var_dump($aa);
    34. var_dump($bb);
    35. var_dump($cc);
    36. $aa->getName();
    37. $cc->getName();