*/ private const VARIABLE_RENAME_MAP = ['HTTP_SERVER_VARS' => '_SERVER', 'HTTP_GET_VARS' => '_GET', 'HTTP_POST_VARS' => '_POST', 'HTTP_POST_FILES' => '_FILES', 'HTTP_SESSION_VARS' => '_SESSION', 'HTTP_ENV_VARS' => '_ENV', 'HTTP_COOKIE_VARS' => '_COOKIE']; public function provideMinPhpVersion() : int { return PhpVersionFeature::SERVER_VAR; } public function getRuleDefinition() : RuleDefinition { return new RuleDefinition('Rename old $HTTP_* variable names to new replacements', [new CodeSample('$serverVars = $HTTP_SERVER_VARS;', '$serverVars = $_SERVER;')]); } /** * @return array> */ public function getNodeTypes() : array { return [Variable::class]; } /** * @param Variable $node */ public function refactor(Node $node) : ?Node { foreach (self::VARIABLE_RENAME_MAP as $oldName => $newName) { if (!$this->isName($node, $oldName)) { continue; } $node->name = $newName; return $node; } return null; } }