staticProperty.test 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. UVS static access
  2. -----
  3. <?php
  4. A::$b;
  5. $A::$b;
  6. 'A'::$b;
  7. ('A' . '')::$b;
  8. 'A'[0]::$b;
  9. A::$$b;
  10. A::$$c[1];
  11. A::$A::$b;
  12. -----
  13. !!php7
  14. array(
  15. 0: Stmt_Expression(
  16. expr: Expr_StaticPropertyFetch(
  17. class: Name(
  18. parts: array(
  19. 0: A
  20. )
  21. )
  22. name: VarLikeIdentifier(
  23. name: b
  24. )
  25. )
  26. )
  27. 1: Stmt_Expression(
  28. expr: Expr_StaticPropertyFetch(
  29. class: Expr_Variable(
  30. name: A
  31. )
  32. name: VarLikeIdentifier(
  33. name: b
  34. )
  35. )
  36. )
  37. 2: Stmt_Expression(
  38. expr: Expr_StaticPropertyFetch(
  39. class: Scalar_String(
  40. value: A
  41. )
  42. name: VarLikeIdentifier(
  43. name: b
  44. )
  45. )
  46. )
  47. 3: Stmt_Expression(
  48. expr: Expr_StaticPropertyFetch(
  49. class: Expr_BinaryOp_Concat(
  50. left: Scalar_String(
  51. value: A
  52. )
  53. right: Scalar_String(
  54. value:
  55. )
  56. )
  57. name: VarLikeIdentifier(
  58. name: b
  59. )
  60. )
  61. )
  62. 4: Stmt_Expression(
  63. expr: Expr_StaticPropertyFetch(
  64. class: Expr_ArrayDimFetch(
  65. var: Scalar_String(
  66. value: A
  67. )
  68. dim: Scalar_LNumber(
  69. value: 0
  70. )
  71. )
  72. name: VarLikeIdentifier(
  73. name: b
  74. )
  75. )
  76. )
  77. 5: Stmt_Expression(
  78. expr: Expr_StaticPropertyFetch(
  79. class: Name(
  80. parts: array(
  81. 0: A
  82. )
  83. )
  84. name: Expr_Variable(
  85. name: b
  86. )
  87. )
  88. )
  89. 6: Stmt_Expression(
  90. expr: Expr_ArrayDimFetch(
  91. var: Expr_StaticPropertyFetch(
  92. class: Name(
  93. parts: array(
  94. 0: A
  95. )
  96. )
  97. name: Expr_Variable(
  98. name: c
  99. )
  100. )
  101. dim: Scalar_LNumber(
  102. value: 1
  103. )
  104. )
  105. )
  106. 7: Stmt_Expression(
  107. expr: Expr_StaticPropertyFetch(
  108. class: Expr_StaticPropertyFetch(
  109. class: Name(
  110. parts: array(
  111. 0: A
  112. )
  113. )
  114. name: VarLikeIdentifier(
  115. name: A
  116. )
  117. )
  118. name: VarLikeIdentifier(
  119. name: b
  120. )
  121. )
  122. )
  123. )