token_get_all_variation7.phpt 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261
  1. --TEST--
  2. Test token_get_all() function : usage variations - with increment/decrement operators
  3. --SKIPIF--
  4. <?php if (!extension_loaded("tokenizer")) print "skip"; ?>
  5. --FILE--
  6. <?php
  7. /* Prototype : array token_get_all(string $source)
  8. * Description: splits the given source into an array of PHP languange tokens
  9. * Source code: ext/tokenizer/tokenizer.c
  10. */
  11. /*
  12. * Passing 'source' argument with different increment/decrement operators to test them for token
  13. * ++ - T_INC(297)
  14. * -- - T_DEC(296)
  15. */
  16. echo "*** Testing token_get_all() : 'source' string with different increment/decrement operators ***\n";
  17. // increment/decrement operators : '++' , '--'
  18. $source = '<?php
  19. $a = 10, $b = 5;
  20. $a++;
  21. $b--;
  22. echo $a;
  23. ?>';
  24. var_dump( token_get_all($source));
  25. echo "Done"
  26. ?>
  27. --EXPECTF--
  28. *** Testing token_get_all() : 'source' string with different increment/decrement operators ***
  29. array(30) {
  30. [0]=>
  31. array(3) {
  32. [0]=>
  33. int(%d)
  34. [1]=>
  35. string(6) "<?php "
  36. [2]=>
  37. int(1)
  38. }
  39. [1]=>
  40. array(3) {
  41. [0]=>
  42. int(%d)
  43. [1]=>
  44. string(1) "
  45. "
  46. [2]=>
  47. int(1)
  48. }
  49. [2]=>
  50. array(3) {
  51. [0]=>
  52. int(%d)
  53. [1]=>
  54. string(2) "$a"
  55. [2]=>
  56. int(2)
  57. }
  58. [3]=>
  59. array(3) {
  60. [0]=>
  61. int(%d)
  62. [1]=>
  63. string(1) " "
  64. [2]=>
  65. int(2)
  66. }
  67. [4]=>
  68. string(1) "="
  69. [5]=>
  70. array(3) {
  71. [0]=>
  72. int(%d)
  73. [1]=>
  74. string(1) " "
  75. [2]=>
  76. int(2)
  77. }
  78. [6]=>
  79. array(3) {
  80. [0]=>
  81. int(%d)
  82. [1]=>
  83. string(2) "10"
  84. [2]=>
  85. int(2)
  86. }
  87. [7]=>
  88. string(1) ","
  89. [8]=>
  90. array(3) {
  91. [0]=>
  92. int(%d)
  93. [1]=>
  94. string(1) " "
  95. [2]=>
  96. int(2)
  97. }
  98. [9]=>
  99. array(3) {
  100. [0]=>
  101. int(%d)
  102. [1]=>
  103. string(2) "$b"
  104. [2]=>
  105. int(2)
  106. }
  107. [10]=>
  108. array(3) {
  109. [0]=>
  110. int(%d)
  111. [1]=>
  112. string(1) " "
  113. [2]=>
  114. int(2)
  115. }
  116. [11]=>
  117. string(1) "="
  118. [12]=>
  119. array(3) {
  120. [0]=>
  121. int(%d)
  122. [1]=>
  123. string(1) " "
  124. [2]=>
  125. int(2)
  126. }
  127. [13]=>
  128. array(3) {
  129. [0]=>
  130. int(%d)
  131. [1]=>
  132. string(1) "5"
  133. [2]=>
  134. int(2)
  135. }
  136. [14]=>
  137. string(1) ";"
  138. [15]=>
  139. array(3) {
  140. [0]=>
  141. int(%d)
  142. [1]=>
  143. string(1) "
  144. "
  145. [2]=>
  146. int(2)
  147. }
  148. [16]=>
  149. array(3) {
  150. [0]=>
  151. int(%d)
  152. [1]=>
  153. string(2) "$a"
  154. [2]=>
  155. int(%d)
  156. }
  157. [17]=>
  158. array(3) {
  159. [0]=>
  160. int(%d)
  161. [1]=>
  162. string(2) "++"
  163. [2]=>
  164. int(%d)
  165. }
  166. [18]=>
  167. string(1) ";"
  168. [19]=>
  169. array(3) {
  170. [0]=>
  171. int(%d)
  172. [1]=>
  173. string(1) "
  174. "
  175. [2]=>
  176. int(%d)
  177. }
  178. [20]=>
  179. array(3) {
  180. [0]=>
  181. int(%d)
  182. [1]=>
  183. string(2) "$b"
  184. [2]=>
  185. int(4)
  186. }
  187. [21]=>
  188. array(3) {
  189. [0]=>
  190. int(%d)
  191. [1]=>
  192. string(2) "--"
  193. [2]=>
  194. int(4)
  195. }
  196. [22]=>
  197. string(1) ";"
  198. [23]=>
  199. array(3) {
  200. [0]=>
  201. int(%d)
  202. [1]=>
  203. string(1) "
  204. "
  205. [2]=>
  206. int(4)
  207. }
  208. [24]=>
  209. array(3) {
  210. [0]=>
  211. int(%d)
  212. [1]=>
  213. string(4) "echo"
  214. [2]=>
  215. int(5)
  216. }
  217. [25]=>
  218. array(3) {
  219. [0]=>
  220. int(%d)
  221. [1]=>
  222. string(1) " "
  223. [2]=>
  224. int(5)
  225. }
  226. [26]=>
  227. array(3) {
  228. [0]=>
  229. int(%d)
  230. [1]=>
  231. string(2) "$a"
  232. [2]=>
  233. int(5)
  234. }
  235. [27]=>
  236. string(1) ";"
  237. [28]=>
  238. array(3) {
  239. [0]=>
  240. int(%d)
  241. [1]=>
  242. string(1) "
  243. "
  244. [2]=>
  245. int(5)
  246. }
  247. [29]=>
  248. array(3) {
  249. [0]=>
  250. int(%d)
  251. [1]=>
  252. string(2) "?>"
  253. [2]=>
  254. int(6)
  255. }
  256. }
  257. Done