pass002.phpt 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271
  1. --TEST--
  2. JSON (http://www.crockford.com/JSON/JSON_checker/test/pass2.json)
  3. --FILE--
  4. <?php
  5. $test = '[[[[[[[[[[[[[[[[[[["Not too deep"]]]]]]]]]]]]]]]]]]]';
  6. echo 'Testing: ' . $test . "\n";
  7. echo "DECODE: AS OBJECT\n";
  8. $obj = json_decode($test);
  9. var_dump($obj);
  10. echo "DECODE: AS ARRAY\n";
  11. $arr = json_decode($test, true);
  12. var_dump($arr);
  13. echo "ENCODE: FROM OBJECT\n";
  14. $obj_enc = json_encode($obj);
  15. echo $obj_enc . "\n";
  16. echo "ENCODE: FROM ARRAY\n";
  17. $arr_enc = json_encode($arr);
  18. echo $arr_enc . "\n";
  19. echo "DECODE AGAIN: AS OBJECT\n";
  20. $obj = json_decode($obj_enc);
  21. var_dump($obj);
  22. echo "DECODE AGAIN: AS ARRAY\n";
  23. $arr = json_decode($arr_enc, true);
  24. var_dump($arr);
  25. ?>
  26. --EXPECT--
  27. Testing: [[[[[[[[[[[[[[[[[[["Not too deep"]]]]]]]]]]]]]]]]]]]
  28. DECODE: AS OBJECT
  29. array(1) {
  30. [0]=>
  31. array(1) {
  32. [0]=>
  33. array(1) {
  34. [0]=>
  35. array(1) {
  36. [0]=>
  37. array(1) {
  38. [0]=>
  39. array(1) {
  40. [0]=>
  41. array(1) {
  42. [0]=>
  43. array(1) {
  44. [0]=>
  45. array(1) {
  46. [0]=>
  47. array(1) {
  48. [0]=>
  49. array(1) {
  50. [0]=>
  51. array(1) {
  52. [0]=>
  53. array(1) {
  54. [0]=>
  55. array(1) {
  56. [0]=>
  57. array(1) {
  58. [0]=>
  59. array(1) {
  60. [0]=>
  61. array(1) {
  62. [0]=>
  63. array(1) {
  64. [0]=>
  65. array(1) {
  66. [0]=>
  67. string(12) "Not too deep"
  68. }
  69. }
  70. }
  71. }
  72. }
  73. }
  74. }
  75. }
  76. }
  77. }
  78. }
  79. }
  80. }
  81. }
  82. }
  83. }
  84. }
  85. }
  86. }
  87. DECODE: AS ARRAY
  88. array(1) {
  89. [0]=>
  90. array(1) {
  91. [0]=>
  92. array(1) {
  93. [0]=>
  94. array(1) {
  95. [0]=>
  96. array(1) {
  97. [0]=>
  98. array(1) {
  99. [0]=>
  100. array(1) {
  101. [0]=>
  102. array(1) {
  103. [0]=>
  104. array(1) {
  105. [0]=>
  106. array(1) {
  107. [0]=>
  108. array(1) {
  109. [0]=>
  110. array(1) {
  111. [0]=>
  112. array(1) {
  113. [0]=>
  114. array(1) {
  115. [0]=>
  116. array(1) {
  117. [0]=>
  118. array(1) {
  119. [0]=>
  120. array(1) {
  121. [0]=>
  122. array(1) {
  123. [0]=>
  124. array(1) {
  125. [0]=>
  126. string(12) "Not too deep"
  127. }
  128. }
  129. }
  130. }
  131. }
  132. }
  133. }
  134. }
  135. }
  136. }
  137. }
  138. }
  139. }
  140. }
  141. }
  142. }
  143. }
  144. }
  145. }
  146. ENCODE: FROM OBJECT
  147. [[[[[[[[[[[[[[[[[[["Not too deep"]]]]]]]]]]]]]]]]]]]
  148. ENCODE: FROM ARRAY
  149. [[[[[[[[[[[[[[[[[[["Not too deep"]]]]]]]]]]]]]]]]]]]
  150. DECODE AGAIN: AS OBJECT
  151. array(1) {
  152. [0]=>
  153. array(1) {
  154. [0]=>
  155. array(1) {
  156. [0]=>
  157. array(1) {
  158. [0]=>
  159. array(1) {
  160. [0]=>
  161. array(1) {
  162. [0]=>
  163. array(1) {
  164. [0]=>
  165. array(1) {
  166. [0]=>
  167. array(1) {
  168. [0]=>
  169. array(1) {
  170. [0]=>
  171. array(1) {
  172. [0]=>
  173. array(1) {
  174. [0]=>
  175. array(1) {
  176. [0]=>
  177. array(1) {
  178. [0]=>
  179. array(1) {
  180. [0]=>
  181. array(1) {
  182. [0]=>
  183. array(1) {
  184. [0]=>
  185. array(1) {
  186. [0]=>
  187. array(1) {
  188. [0]=>
  189. string(12) "Not too deep"
  190. }
  191. }
  192. }
  193. }
  194. }
  195. }
  196. }
  197. }
  198. }
  199. }
  200. }
  201. }
  202. }
  203. }
  204. }
  205. }
  206. }
  207. }
  208. }
  209. DECODE AGAIN: AS ARRAY
  210. array(1) {
  211. [0]=>
  212. array(1) {
  213. [0]=>
  214. array(1) {
  215. [0]=>
  216. array(1) {
  217. [0]=>
  218. array(1) {
  219. [0]=>
  220. array(1) {
  221. [0]=>
  222. array(1) {
  223. [0]=>
  224. array(1) {
  225. [0]=>
  226. array(1) {
  227. [0]=>
  228. array(1) {
  229. [0]=>
  230. array(1) {
  231. [0]=>
  232. array(1) {
  233. [0]=>
  234. array(1) {
  235. [0]=>
  236. array(1) {
  237. [0]=>
  238. array(1) {
  239. [0]=>
  240. array(1) {
  241. [0]=>
  242. array(1) {
  243. [0]=>
  244. array(1) {
  245. [0]=>
  246. array(1) {
  247. [0]=>
  248. string(12) "Not too deep"
  249. }
  250. }
  251. }
  252. }
  253. }
  254. }
  255. }
  256. }
  257. }
  258. }
  259. }
  260. }
  261. }
  262. }
  263. }
  264. }
  265. }
  266. }
  267. }