bug54058.phpt 913 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. --TEST--
  2. Bug #54058 (json_last_error() invalid UTF-8 produces wrong error)
  3. --FILE--
  4. <?php
  5. $bad_utf8 = quoted_printable_decode('=B0');
  6. json_encode($bad_utf8);
  7. var_dump(json_last_error(), json_last_error_msg());
  8. $a = new stdclass;
  9. $a->foo = quoted_printable_decode('=B0');
  10. json_encode($a);
  11. var_dump(json_last_error(), json_last_error_msg());
  12. $b = new stdclass;
  13. $b->foo = $bad_utf8;
  14. $b->bar = 1;
  15. json_encode($b);
  16. var_dump(json_last_error(), json_last_error_msg());
  17. $c = array(
  18. 'foo' => $bad_utf8,
  19. 'bar' => 1
  20. );
  21. json_encode($c);
  22. var_dump(json_last_error(), json_last_error_msg());
  23. ?>
  24. --EXPECT--
  25. int(5)
  26. string(56) "Malformed UTF-8 characters, possibly incorrectly encoded"
  27. int(5)
  28. string(56) "Malformed UTF-8 characters, possibly incorrectly encoded"
  29. int(5)
  30. string(56) "Malformed UTF-8 characters, possibly incorrectly encoded"
  31. int(5)
  32. string(56) "Malformed UTF-8 characters, possibly incorrectly encoded"