bug72543.phpt 552 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. --TEST--
  2. Bug #72543 (different references behavior comparing to PHP 5)
  3. --FILE--
  4. <?php
  5. function create_references(&$array) {
  6. foreach ($array as $key => $value) {
  7. create_references($array[$key]);
  8. }
  9. }
  10. function change_copy($copy) {
  11. $copy['b']['z']['z'] = $copy['b'];
  12. }
  13. $data = [
  14. 'a' => [
  15. 'b' => [],
  16. ],
  17. ];
  18. create_references($data);
  19. $copy = $data['a'];
  20. var_dump($copy);
  21. change_copy($copy);
  22. var_dump($copy); //RECURSION
  23. ?>
  24. --EXPECT--
  25. array(1) {
  26. ["b"]=>
  27. array(0) {
  28. }
  29. }
  30. array(1) {
  31. ["b"]=>
  32. array(0) {
  33. }
  34. }