From 32e103ba08c568928c044857a2b8085bc6b0be07 Mon Sep 17 00:00:00 2001 From: Greg Sherwood Date: Wed, 30 Apr 2014 10:23:18 +1000 Subject: [PATCH] Squiz ValidVariableNameSniff and Zend ValidVariableNameSniff now ignore additional PHP reserved vars --- .../Sniffs/NamingConventions/ValidVariableNameSniff.php | 8 +++++++- .../Tests/NamingConventions/ValidVariableNameUnitTest.inc | 5 ++++- .../Sniffs/NamingConventions/ValidVariableNameSniff.php | 7 ++++++- .../Tests/NamingConventions/ValidVariableNameUnitTest.inc | 5 ++++- package.xml | 2 ++ 5 files changed, 23 insertions(+), 4 deletions(-) diff --git a/CodeSniffer/Standards/Squiz/Sniffs/NamingConventions/ValidVariableNameSniff.php b/CodeSniffer/Standards/Squiz/Sniffs/NamingConventions/ValidVariableNameSniff.php index ad444444ef..0cb018cbb9 100644 --- a/CodeSniffer/Standards/Squiz/Sniffs/NamingConventions/ValidVariableNameSniff.php +++ b/CodeSniffer/Standards/Squiz/Sniffs/NamingConventions/ValidVariableNameSniff.php @@ -69,7 +69,9 @@ protected function processVariable(PHP_CodeSniffer_File $phpcsFile, $stackPtr) '_COOKIE', '_FILES', 'GLOBALS', - 'http_response_header' + 'http_response_header', + 'HTTP_RAW_POST_DATA', + 'php_errormsg', ); // If it's a php reserved var, then its ok. @@ -206,7 +208,11 @@ protected function processVariableInString(PHP_CodeSniffer_File $phpcsFile, $sta '_COOKIE', '_FILES', 'GLOBALS', + 'http_response_header', + 'HTTP_RAW_POST_DATA', + 'php_errormsg', ); + if (preg_match_all('|[^\\\]\${?([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)|', $tokens[$stackPtr]['content'], $matches) !== 0) { foreach ($matches[1] as $varName) { // If it's a php reserved var, then its ok. diff --git a/CodeSniffer/Standards/Squiz/Tests/NamingConventions/ValidVariableNameUnitTest.inc b/CodeSniffer/Standards/Squiz/Tests/NamingConventions/ValidVariableNameUnitTest.inc index 265162d0f8..6a3c866692 100644 --- a/CodeSniffer/Standards/Squiz/Tests/NamingConventions/ValidVariableNameUnitTest.inc +++ b/CodeSniffer/Standards/Squiz/Tests/NamingConventions/ValidVariableNameUnitTest.inc @@ -107,4 +107,7 @@ class a $_FieldParser, $_key; } -?> + +var_dump($http_response_header); +var_dump($HTTP_RAW_POST_DATA); +var_dump($php_errormsg); diff --git a/CodeSniffer/Standards/Zend/Sniffs/NamingConventions/ValidVariableNameSniff.php b/CodeSniffer/Standards/Zend/Sniffs/NamingConventions/ValidVariableNameSniff.php index 9f21906594..992033074d 100644 --- a/CodeSniffer/Standards/Zend/Sniffs/NamingConventions/ValidVariableNameSniff.php +++ b/CodeSniffer/Standards/Zend/Sniffs/NamingConventions/ValidVariableNameSniff.php @@ -69,7 +69,9 @@ protected function processVariable(PHP_CodeSniffer_File $phpcsFile, $stackPtr) '_COOKIE', '_FILES', 'GLOBALS', - 'http_response_header' + 'http_response_header', + 'HTTP_RAW_POST_DATA', + 'php_errormsg', ); // If it's a php reserved var, then its ok. @@ -213,6 +215,9 @@ protected function processVariableInString(PHP_CodeSniffer_File $phpcsFile, $sta '_COOKIE', '_FILES', 'GLOBALS', + 'http_response_header', + 'HTTP_RAW_POST_DATA', + 'php_errormsg', ); if (preg_match_all('|[^\\\]\$([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)|', $tokens[$stackPtr]['content'], $matches) !== 0) { diff --git a/CodeSniffer/Standards/Zend/Tests/NamingConventions/ValidVariableNameUnitTest.inc b/CodeSniffer/Standards/Zend/Tests/NamingConventions/ValidVariableNameUnitTest.inc index 29d6369ddd..d438ab7faf 100644 --- a/CodeSniffer/Standards/Zend/Tests/NamingConventions/ValidVariableNameUnitTest.inc +++ b/CodeSniffer/Standards/Zend/Tests/NamingConventions/ValidVariableNameUnitTest.inc @@ -97,4 +97,7 @@ echo "{$_SERVER['HOSTNAME']} $var_name"; $someObject->{$name}; $someObject->my_function($var_name); -?> + +var_dump($http_response_header); +var_dump($HTTP_RAW_POST_DATA); +var_dump($php_errormsg); diff --git a/package.xml b/package.xml index 6de5682141..f757df9fe7 100644 --- a/package.xml +++ b/package.xml @@ -37,6 +37,8 @@ http://pear.php.net/dtd/package-2.0.xsd"> - Squiz LowercasePHPFunctionsSniff no longer reports errors for namespaced functions -- Thanks to Max Galbusera for the patch - Squiz SwitchDeclarationSniff now allows exit() as a breaking statement for case/default + - Squiz ValidVariableNameSniff and Zend ValidVariableNameSniff now ignore additional PHP reserved vars + -- Thanks to Mikuláš Dítě and Adrian Crepaz for the patch - Sniff code Squiz.WhiteSpace.MemberVarSpacing.After changed to Squiz.WhiteSpace.MemberVarSpacing.Incorrect (request #20241) - Fixed bug #20200 : Invalid JSON produced with specific error message - Fixed bug #20204 : Ruleset exclude checks are case sensitive