@@ -105,6 +105,13 @@ public function process(File $phpcsFile, $stackPtr)
105
105
}
106
106
107
107
if ($ tokens [$ varToken ]['code ' ] === T_VARIABLE ) {
108
+ $ prevNonEmpty = $ phpcsFile ->findPrevious (Tokens::$ emptyTokens , ($ varToken - 1 ), null , true );
109
+ if ($ tokens [$ prevNonEmpty ]['code ' ] === T_OBJECT_OPERATOR ) {
110
+ // Dynamic property access, the real "start" variable still needs to be found.
111
+ $ varToken = $ prevNonEmpty ;
112
+ continue ;
113
+ }
114
+
108
115
// We found our variable.
109
116
break ;
110
117
}
@@ -119,15 +126,14 @@ public function process(File $phpcsFile, $stackPtr)
119
126
120
127
$ allowed = Tokens::$ emptyTokens ;
121
128
122
- $ allowed [T_STRING ] = T_STRING ;
123
- $ allowed [T_NS_SEPARATOR ] = T_NS_SEPARATOR ;
124
- $ allowed [T_DOUBLE_COLON ] = T_DOUBLE_COLON ;
125
- $ allowed [T_OBJECT_OPERATOR ] = T_OBJECT_OPERATOR ;
126
- $ allowed [T_ASPERAND ] = T_ASPERAND ;
127
- $ allowed [T_DOLLAR ] = T_DOLLAR ;
128
- $ allowed [T_SELF ] = T_SELF ;
129
- $ allowed [T_PARENT ] = T_PARENT ;
130
- $ allowed [T_STATIC ] = T_STATIC ;
129
+ $ allowed [T_STRING ] = T_STRING ;
130
+ $ allowed [T_NS_SEPARATOR ] = T_NS_SEPARATOR ;
131
+ $ allowed [T_DOUBLE_COLON ] = T_DOUBLE_COLON ;
132
+ $ allowed [T_ASPERAND ] = T_ASPERAND ;
133
+ $ allowed [T_DOLLAR ] = T_DOLLAR ;
134
+ $ allowed [T_SELF ] = T_SELF ;
135
+ $ allowed [T_PARENT ] = T_PARENT ;
136
+ $ allowed [T_STATIC ] = T_STATIC ;
131
137
132
138
$ varToken = $ phpcsFile ->findPrevious ($ allowed , ($ varToken - 1 ), null , true );
133
139
0 commit comments