encapsedString.test 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. Encapsed strings
  2. -----
  3. <?php
  4. "$A";
  5. "$A->B";
  6. "$A[B]";
  7. "$A[0]";
  8. "$A[0x0]";
  9. "$A[$B]";
  10. "{$A}";
  11. "{$A['B']}";
  12. "${A}";
  13. "${A['B']}";
  14. "${$A}";
  15. "\{$A}";
  16. "\{ $A }";
  17. "\\{$A}";
  18. "\\{ $A }";
  19. "{$$A}[B]";
  20. "$$A[B]";
  21. "A $B C";
  22. b"$A";
  23. B"$A";
  24. -----
  25. array(
  26. 0: Scalar_Encapsed(
  27. parts: array(
  28. 0: Expr_Variable(
  29. name: A
  30. )
  31. )
  32. )
  33. 1: Scalar_Encapsed(
  34. parts: array(
  35. 0: Expr_PropertyFetch(
  36. var: Expr_Variable(
  37. name: A
  38. )
  39. name: B
  40. )
  41. )
  42. )
  43. 2: Scalar_Encapsed(
  44. parts: array(
  45. 0: Expr_ArrayDimFetch(
  46. var: Expr_Variable(
  47. name: A
  48. )
  49. dim: Scalar_String(
  50. value: B
  51. )
  52. )
  53. )
  54. )
  55. 3: Scalar_Encapsed(
  56. parts: array(
  57. 0: Expr_ArrayDimFetch(
  58. var: Expr_Variable(
  59. name: A
  60. )
  61. dim: Scalar_String(
  62. value: 0
  63. )
  64. )
  65. )
  66. )
  67. 4: Scalar_Encapsed(
  68. parts: array(
  69. 0: Expr_ArrayDimFetch(
  70. var: Expr_Variable(
  71. name: A
  72. )
  73. dim: Scalar_String(
  74. value: 0x0
  75. )
  76. )
  77. )
  78. )
  79. 5: Scalar_Encapsed(
  80. parts: array(
  81. 0: Expr_ArrayDimFetch(
  82. var: Expr_Variable(
  83. name: A
  84. )
  85. dim: Expr_Variable(
  86. name: B
  87. )
  88. )
  89. )
  90. )
  91. 6: Scalar_Encapsed(
  92. parts: array(
  93. 0: Expr_Variable(
  94. name: A
  95. )
  96. )
  97. )
  98. 7: Scalar_Encapsed(
  99. parts: array(
  100. 0: Expr_ArrayDimFetch(
  101. var: Expr_Variable(
  102. name: A
  103. )
  104. dim: Scalar_String(
  105. value: B
  106. )
  107. )
  108. )
  109. )
  110. 8: Scalar_Encapsed(
  111. parts: array(
  112. 0: Expr_Variable(
  113. name: A
  114. )
  115. )
  116. )
  117. 9: Scalar_Encapsed(
  118. parts: array(
  119. 0: Expr_ArrayDimFetch(
  120. var: Expr_Variable(
  121. name: A
  122. )
  123. dim: Scalar_String(
  124. value: B
  125. )
  126. )
  127. )
  128. )
  129. 10: Scalar_Encapsed(
  130. parts: array(
  131. 0: Expr_Variable(
  132. name: Expr_Variable(
  133. name: A
  134. )
  135. )
  136. )
  137. )
  138. 11: Scalar_Encapsed(
  139. parts: array(
  140. 0: Scalar_EncapsedStringPart(
  141. value: \{
  142. )
  143. 1: Expr_Variable(
  144. name: A
  145. )
  146. 2: Scalar_EncapsedStringPart(
  147. value: }
  148. )
  149. )
  150. )
  151. 12: Scalar_Encapsed(
  152. parts: array(
  153. 0: Scalar_EncapsedStringPart(
  154. value: \{
  155. )
  156. 1: Expr_Variable(
  157. name: A
  158. )
  159. 2: Scalar_EncapsedStringPart(
  160. value: }
  161. )
  162. )
  163. )
  164. 13: Scalar_Encapsed(
  165. parts: array(
  166. 0: Scalar_EncapsedStringPart(
  167. value: \
  168. )
  169. 1: Expr_Variable(
  170. name: A
  171. )
  172. )
  173. )
  174. 14: Scalar_Encapsed(
  175. parts: array(
  176. 0: Scalar_EncapsedStringPart(
  177. value: \{
  178. )
  179. 1: Expr_Variable(
  180. name: A
  181. )
  182. 2: Scalar_EncapsedStringPart(
  183. value: }
  184. )
  185. )
  186. )
  187. 15: Scalar_Encapsed(
  188. parts: array(
  189. 0: Expr_Variable(
  190. name: Expr_Variable(
  191. name: A
  192. )
  193. )
  194. 1: Scalar_EncapsedStringPart(
  195. value: [B]
  196. )
  197. )
  198. )
  199. 16: Scalar_Encapsed(
  200. parts: array(
  201. 0: Scalar_EncapsedStringPart(
  202. value: $
  203. )
  204. 1: Expr_ArrayDimFetch(
  205. var: Expr_Variable(
  206. name: A
  207. )
  208. dim: Scalar_String(
  209. value: B
  210. )
  211. )
  212. )
  213. )
  214. 17: Scalar_Encapsed(
  215. parts: array(
  216. 0: Scalar_EncapsedStringPart(
  217. value: A
  218. )
  219. 1: Expr_Variable(
  220. name: B
  221. )
  222. 2: Scalar_EncapsedStringPart(
  223. value: C
  224. )
  225. )
  226. )
  227. 18: Scalar_Encapsed(
  228. parts: array(
  229. 0: Expr_Variable(
  230. name: A
  231. )
  232. )
  233. )
  234. 19: Scalar_Encapsed(
  235. parts: array(
  236. 0: Expr_Variable(
  237. name: A
  238. )
  239. )
  240. )
  241. )