气馁 Class 使用 PHPCS

Discouraged Class Usage PHPCS

假设我有这些 类:

如果存在 ->something(new Old_Class())Old_Class::staticMethod()$oldClass->methodCall() 我想要一个代码嗅探来警告 "Old_Class usage found, recommend using New_Class instead"。

我发现了这个 sniff Generic.PHP.ForbiddenFunctions,但它似乎只能捕获内置 php 函数 is_array, is_null, etc

我需要为此编写自定义嗅探吗?

如果是这样,我应该在 register() 函数中添加什么 token 才能流行起来?

我无法使用内置的。我不得不用 T_STRING.

写一个
public function register()
{
    return [
        T_STRING,
    ];
}

public function process(PHP_CodeSniffer_File $phpcsFile, $stackPtr)
{
    $tokens = $phpcsFile->getTokens();

    if ($tokens[$stackPtr]['content'] === 'Old_Class') {
        $error = 'Old_Class usage found, consider using New_Class instead.';
        $phpcsFile->addWarning($error, $stackPtr);
    }
}