bug64874_part2.phpt 875 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. --TEST--
  2. Case-sensitivity part of bug #64874 ("json_decode handles whitespace and case-sensitivity incorrectly")
  3. --SKIPIF--
  4. <?php if (!extension_loaded("json")) print "skip"; ?>
  5. --FILE--
  6. <?php
  7. function decode($json) {
  8. var_dump(json_decode($json));
  9. echo ((json_last_error() !== 0) ? 'ERROR' : 'SUCCESS') . PHP_EOL;
  10. }
  11. // Only lowercase should work
  12. decode('true');
  13. decode('True');
  14. decode('[true]');
  15. decode('[True]');
  16. echo PHP_EOL;
  17. decode('false');
  18. decode('False');
  19. decode('[false]');
  20. decode('[False]');
  21. echo PHP_EOL;
  22. decode('null');
  23. decode('Null');
  24. decode('[null]');
  25. decode('[Null]');
  26. echo PHP_EOL;
  27. echo "Done\n";
  28. --EXPECT--
  29. bool(true)
  30. SUCCESS
  31. NULL
  32. ERROR
  33. array(1) {
  34. [0]=>
  35. bool(true)
  36. }
  37. SUCCESS
  38. NULL
  39. ERROR
  40. bool(false)
  41. SUCCESS
  42. NULL
  43. ERROR
  44. array(1) {
  45. [0]=>
  46. bool(false)
  47. }
  48. SUCCESS
  49. NULL
  50. ERROR
  51. NULL
  52. SUCCESS
  53. NULL
  54. ERROR
  55. array(1) {
  56. [0]=>
  57. NULL
  58. }
  59. SUCCESS
  60. NULL
  61. ERROR
  62. Done