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