newInstanceofExpr.test 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. Arbitrary expressions in new and instanceof
  2. -----
  3. <?php
  4. new ('Foo' . $bar);
  5. new ('Foo' . $bar)($arg);
  6. $obj instanceof ('Foo' . $bar);
  7. -----
  8. array(
  9. 0: Stmt_Expression(
  10. expr: Expr_New(
  11. class: Expr_BinaryOp_Concat(
  12. left: Scalar_String(
  13. value: Foo
  14. )
  15. right: Expr_Variable(
  16. name: bar
  17. )
  18. )
  19. args: array(
  20. )
  21. )
  22. )
  23. 1: Stmt_Expression(
  24. expr: Expr_New(
  25. class: Expr_BinaryOp_Concat(
  26. left: Scalar_String(
  27. value: Foo
  28. )
  29. right: Expr_Variable(
  30. name: bar
  31. )
  32. )
  33. args: array(
  34. 0: Arg(
  35. name: null
  36. value: Expr_Variable(
  37. name: arg
  38. )
  39. byRef: false
  40. unpack: false
  41. )
  42. )
  43. )
  44. )
  45. 2: Stmt_Expression(
  46. expr: Expr_Instanceof(
  47. expr: Expr_Variable(
  48. name: obj
  49. )
  50. class: Expr_BinaryOp_Concat(
  51. left: Scalar_String(
  52. value: Foo
  53. )
  54. right: Expr_Variable(
  55. name: bar
  56. )
  57. )
  58. )
  59. )
  60. )