newInstanceofExpr.test 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  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. !!php7
  9. array(
  10. 0: Stmt_Expression(
  11. expr: Expr_New(
  12. class: Expr_BinaryOp_Concat(
  13. left: Scalar_String(
  14. value: Foo
  15. )
  16. right: Expr_Variable(
  17. name: bar
  18. )
  19. )
  20. args: array(
  21. )
  22. )
  23. )
  24. 1: Stmt_Expression(
  25. expr: Expr_New(
  26. class: Expr_BinaryOp_Concat(
  27. left: Scalar_String(
  28. value: Foo
  29. )
  30. right: Expr_Variable(
  31. name: bar
  32. )
  33. )
  34. args: array(
  35. 0: Arg(
  36. name: null
  37. value: Expr_Variable(
  38. name: arg
  39. )
  40. byRef: false
  41. unpack: false
  42. )
  43. )
  44. )
  45. )
  46. 2: Stmt_Expression(
  47. expr: Expr_Instanceof(
  48. expr: Expr_Variable(
  49. name: obj
  50. )
  51. class: Expr_BinaryOp_Concat(
  52. left: Scalar_String(
  53. value: Foo
  54. )
  55. right: Expr_Variable(
  56. name: bar
  57. )
  58. )
  59. )
  60. )
  61. )