@@ -311,7 +311,7 @@ protected function processParams(File $phpcsFile, $stackPtr, $commentStart)
311
311
$ commentLines = [];
312
312
if ($ tokens [($ tag + 2 )]['code ' ] === T_DOC_COMMENT_STRING ) {
313
313
$ matches = [];
314
- preg_match ('/([^$&.]+ )(?:((?:\.\.\.)?(?:\$|&)[^\s]+)(?:(\s+)(.*))?)?/ ' , $ tokens [($ tag + 2 )]['content ' ], $ matches );
314
+ preg_match ('/((?:(?![$.]|&(?=\$)).)* )(?:((?:\.\.\.)?(?:\$|&)[^\s]+)(?:(\s+)(.*))?)?/ ' , $ tokens [($ tag + 2 )]['content ' ], $ matches );
315
315
316
316
if (empty ($ matches ) === false ) {
317
317
$ typeLen = strlen ($ matches [1 ]);
@@ -323,7 +323,10 @@ protected function processParams(File $phpcsFile, $stackPtr, $commentStart)
323
323
}
324
324
}
325
325
326
- if (isset ($ matches [2 ]) === true ) {
326
+ if ($ tokens [($ tag + 2 )]['content ' ][0 ] === '$ ' ) {
327
+ $ error = 'Missing parameter type ' ;
328
+ $ phpcsFile ->addError ($ error , $ tag , 'MissingParamType ' );
329
+ } else if (isset ($ matches [2 ]) === true ) {
327
330
$ var = $ matches [2 ];
328
331
$ varLen = strlen ($ var );
329
332
if ($ varLen > $ maxVar ) {
@@ -366,9 +369,6 @@ protected function processParams(File $phpcsFile, $stackPtr, $commentStart)
366
369
$ phpcsFile ->addError ($ error , $ tag , 'MissingParamComment ' );
367
370
$ commentLines [] = ['comment ' => '' ];
368
371
}//end if
369
- } else if ($ tokens [($ tag + 2 )]['content ' ][0 ] === '$ ' ) {
370
- $ error = 'Missing parameter type ' ;
371
- $ phpcsFile ->addError ($ error , $ tag , 'MissingParamType ' );
372
372
} else {
373
373
$ error = 'Missing parameter name ' ;
374
374
$ phpcsFile ->addError ($ error , $ tag , 'MissingParamName ' );
0 commit comments