003.phpt 495 B

123456789101112131415161718192021222324252627282930313233343536
  1. --TEST--
  2. json_encode() & endless loop - 1
  3. --FILE--
  4. <?php
  5. $a = array();
  6. $a[] = &$a;
  7. var_dump($a);
  8. echo "\n";
  9. var_dump(json_encode($a));
  10. var_dump(json_last_error(), json_last_error_msg());
  11. echo "\n";
  12. var_dump(json_encode($a, JSON_PARTIAL_OUTPUT_ON_ERROR));
  13. var_dump(json_last_error(), json_last_error_msg());
  14. echo "Done\n";
  15. ?>
  16. --EXPECTF--
  17. array(1) {
  18. [0]=>
  19. *RECURSION*
  20. }
  21. bool(false)
  22. int(6)
  23. string(%d) "Recursion detected"
  24. string(6) "[null]"
  25. int(6)
  26. string(%d) "Recursion detected"
  27. Done