From 49a8d01933a8a029e68f6895eb5347c7f1dbef36 Mon Sep 17 00:00:00 2001 From: jrfnl Date: Sat, 1 Aug 2020 02:00:04 +0200 Subject: [PATCH] PHP 8.0 | Zend/ValidVariableName: allow for nullsafe object operator Includes unit test. --- .../Zend/Sniffs/NamingConventions/ValidVariableNameSniff.php | 4 +++- .../Tests/NamingConventions/ValidVariableNameUnitTest.inc | 4 ++++ .../Tests/NamingConventions/ValidVariableNameUnitTest.php | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/Standards/Zend/Sniffs/NamingConventions/ValidVariableNameSniff.php b/src/Standards/Zend/Sniffs/NamingConventions/ValidVariableNameSniff.php index ea98fd2847..267cd0ad62 100644 --- a/src/Standards/Zend/Sniffs/NamingConventions/ValidVariableNameSniff.php +++ b/src/Standards/Zend/Sniffs/NamingConventions/ValidVariableNameSniff.php @@ -38,7 +38,9 @@ protected function processVariable(File $phpcsFile, $stackPtr) } $objOperator = $phpcsFile->findNext([T_WHITESPACE], ($stackPtr + 1), null, true); - if ($tokens[$objOperator]['code'] === T_OBJECT_OPERATOR) { + if ($tokens[$objOperator]['code'] === T_OBJECT_OPERATOR + || $tokens[$objOperator]['code'] === T_NULLSAFE_OBJECT_OPERATOR + ) { // Check to see if we are using a variable from an object. $var = $phpcsFile->findNext([T_WHITESPACE], ($objOperator + 1), null, true); if ($tokens[$var]['code'] === T_STRING) { diff --git a/src/Standards/Zend/Tests/NamingConventions/ValidVariableNameUnitTest.inc b/src/Standards/Zend/Tests/NamingConventions/ValidVariableNameUnitTest.inc index 1bf486cab6..8ed8509d2a 100644 --- a/src/Standards/Zend/Tests/NamingConventions/ValidVariableNameUnitTest.inc +++ b/src/Standards/Zend/Tests/NamingConventions/ValidVariableNameUnitTest.inc @@ -116,3 +116,7 @@ $anonClass = new class() { $bar_foo = 3; } }; + +echo $obj?->varName; +echo $obj?->var_name; +echo $obj?->varName; diff --git a/src/Standards/Zend/Tests/NamingConventions/ValidVariableNameUnitTest.php b/src/Standards/Zend/Tests/NamingConventions/ValidVariableNameUnitTest.php index d22b24fd3f..916b334f1c 100644 --- a/src/Standards/Zend/Tests/NamingConventions/ValidVariableNameUnitTest.php +++ b/src/Standards/Zend/Tests/NamingConventions/ValidVariableNameUnitTest.php @@ -53,6 +53,7 @@ public function getErrorList() 99 => 1, 113 => 1, 116 => 1, + 121 => 1, ]; }//end getErrorList()