bug71995.phpt 579 B

123456789101112131415161718192021222324252627
  1. --TEST--
  2. Bug #71995 (Returning the same var twice from __sleep() produces broken serialized data)
  3. --FILE--
  4. <?php
  5. class A {
  6. public $b;
  7. public function __construct() {
  8. $this->b = new StdClass();
  9. }
  10. public function __sleep() {
  11. return array("b", "b");
  12. }
  13. }
  14. $a = new A();
  15. $s = serialize($a);
  16. var_dump($s);
  17. var_dump(unserialize($s));
  18. ?>
  19. --EXPECTF--
  20. Notice: serialize(): "b" is returned from __sleep() multiple times in %s on line %d
  21. string(39) "O:1:"A":1:{s:1:"b";O:8:"stdClass":0:{}}"
  22. object(A)#%d (1) {
  23. ["b"]=>
  24. object(stdClass)#%d (0) {
  25. }
  26. }