clone_002.phpt 643 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. --TEST--
  2. ZE2 object cloning, 2
  3. --SKIPIF--
  4. <?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?>
  5. --FILE--
  6. <?php
  7. class test {
  8. public $p1 = 1;
  9. public $p2 = 2;
  10. public $p3;
  11. public function __clone() {
  12. }
  13. };
  14. $obj = new test;
  15. $obj->p2 = 'A';
  16. $obj->p3 = 'B';
  17. $copy = clone $obj;
  18. $copy->p3 = 'C';
  19. echo "Object\n";
  20. var_dump($obj);
  21. echo "Clown\n";
  22. var_dump($copy);
  23. echo "Done\n";
  24. ?>
  25. --EXPECT--
  26. Object
  27. object(test)#1 (3) {
  28. ["p1"]=>
  29. int(1)
  30. ["p2"]=>
  31. string(1) "A"
  32. ["p3"]=>
  33. string(1) "B"
  34. }
  35. Clown
  36. object(test)#2 (3) {
  37. ["p1"]=>
  38. int(1)
  39. ["p2"]=>
  40. string(1) "A"
  41. ["p3"]=>
  42. string(1) "C"
  43. }
  44. Done