Annotation of embedaddon/php/ext/json/tests/json_decode_basic.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Test json_decode() function : basic functionality
! 3: --SKIPIF--
! 4: <?php
! 5: if (!extension_loaded("json")) {
! 6: die('skip JSON extension not available in this build');
! 7: }
! 8: ?>
! 9: --FILE--
! 10: <?php
! 11: /* Prototype : mixed json_decode ( string $json [, bool $assoc ] )
! 12: * Description: Decodes a JSON string
! 13: * Source code: ext/json/php_json.c
! 14: * Alias to functions:
! 15: */
! 16: echo "*** Testing json_decode() : basic functionality ***\n";
! 17:
! 18: // array with different values for $string
! 19: $inputs = array (
! 20: '0',
! 21: '123',
! 22: '-123',
! 23: '2147483647',
! 24: '-2147483648',
! 25: '123.456',
! 26: '1230',
! 27: '-1230',
! 28: 'true',
! 29: 'false',
! 30: 'null',
! 31: '"abc"',
! 32: '"Hello World\r\n"',
! 33: '[]',
! 34: '[1,2,3,4,5]',
! 35: '{"myInt":99,"myFloat":123.45,"myNull":null,"myBool":true,"myString":"Hello World"}',
! 36: '{"Jan":31,"Feb":29,"Mar":31,"April":30,"May":31,"June":30}',
! 37: '""',
! 38: '{}'
! 39: );
! 40:
! 41: // loop through with each element of the $inputs array to test json_decode() function
! 42: $count = 1;
! 43: foreach($inputs as $input) {
! 44: echo "-- Iteration $count --\n";
! 45: var_dump(json_decode($input));
! 46: var_dump(json_decode($input, TRUE));
! 47: $count ++;
! 48: }
! 49:
! 50: ?>
! 51: ===Done===
! 52: --EXPECTF--
! 53: *** Testing json_decode() : basic functionality ***
! 54: -- Iteration 1 --
! 55: int(0)
! 56: int(0)
! 57: -- Iteration 2 --
! 58: int(123)
! 59: int(123)
! 60: -- Iteration 3 --
! 61: int(-123)
! 62: int(-123)
! 63: -- Iteration 4 --
! 64: int(2147483647)
! 65: int(2147483647)
! 66: -- Iteration 5 --
! 67: int(-2147483648)
! 68: int(-2147483648)
! 69: -- Iteration 6 --
! 70: float(123.456)
! 71: float(123.456)
! 72: -- Iteration 7 --
! 73: int(1230)
! 74: int(1230)
! 75: -- Iteration 8 --
! 76: int(-1230)
! 77: int(-1230)
! 78: -- Iteration 9 --
! 79: bool(true)
! 80: bool(true)
! 81: -- Iteration 10 --
! 82: bool(false)
! 83: bool(false)
! 84: -- Iteration 11 --
! 85: NULL
! 86: NULL
! 87: -- Iteration 12 --
! 88: string(3) "abc"
! 89: string(3) "abc"
! 90: -- Iteration 13 --
! 91: string(13) "Hello World
! 92: "
! 93: string(13) "Hello World
! 94: "
! 95: -- Iteration 14 --
! 96: array(0) {
! 97: }
! 98: array(0) {
! 99: }
! 100: -- Iteration 15 --
! 101: array(5) {
! 102: [0]=>
! 103: int(1)
! 104: [1]=>
! 105: int(2)
! 106: [2]=>
! 107: int(3)
! 108: [3]=>
! 109: int(4)
! 110: [4]=>
! 111: int(5)
! 112: }
! 113: array(5) {
! 114: [0]=>
! 115: int(1)
! 116: [1]=>
! 117: int(2)
! 118: [2]=>
! 119: int(3)
! 120: [3]=>
! 121: int(4)
! 122: [4]=>
! 123: int(5)
! 124: }
! 125: -- Iteration 16 --
! 126: object(stdClass)#%d (5) {
! 127: ["myInt"]=>
! 128: int(99)
! 129: ["myFloat"]=>
! 130: float(123.45)
! 131: ["myNull"]=>
! 132: NULL
! 133: ["myBool"]=>
! 134: bool(true)
! 135: ["myString"]=>
! 136: string(11) "Hello World"
! 137: }
! 138: array(5) {
! 139: ["myInt"]=>
! 140: int(99)
! 141: ["myFloat"]=>
! 142: float(123.45)
! 143: ["myNull"]=>
! 144: NULL
! 145: ["myBool"]=>
! 146: bool(true)
! 147: ["myString"]=>
! 148: string(11) "Hello World"
! 149: }
! 150: -- Iteration 17 --
! 151: object(stdClass)#%d (6) {
! 152: ["Jan"]=>
! 153: int(31)
! 154: ["Feb"]=>
! 155: int(29)
! 156: ["Mar"]=>
! 157: int(31)
! 158: ["April"]=>
! 159: int(30)
! 160: ["May"]=>
! 161: int(31)
! 162: ["June"]=>
! 163: int(30)
! 164: }
! 165: array(6) {
! 166: ["Jan"]=>
! 167: int(31)
! 168: ["Feb"]=>
! 169: int(29)
! 170: ["Mar"]=>
! 171: int(31)
! 172: ["April"]=>
! 173: int(30)
! 174: ["May"]=>
! 175: int(31)
! 176: ["June"]=>
! 177: int(30)
! 178: }
! 179: -- Iteration 18 --
! 180: string(0) ""
! 181: string(0) ""
! 182: -- Iteration 19 --
! 183: object(stdClass)#%d (0) {
! 184: }
! 185: array(0) {
! 186: }
! 187: ===Done===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>