Seditio Source
Root |
./othercms/croogo-4.0.7/vendor/squizlabs/php_codesniffer/src/Standards/Generic/Sniffs/PHP/DeprecatedFunctionsSniff.php
<?php
/**
 * Discourages the use of deprecated PHP functions.
 *
 * @author    Sebastian Bergmann <sb@sebastian-bergmann.de>
 * @author    Greg Sherwood <gsherwood@squiz.net>
 * @copyright 2006-2015 Squiz Pty Ltd (ABN 77 084 670 600)
 * @license   https://github.com/squizlabs/PHP_CodeSniffer/blob/master/licence.txt BSD Licence
 */

namespace PHP_CodeSniffer\Standards\Generic\Sniffs\PHP;

class
DeprecatedFunctionsSniff extends ForbiddenFunctionsSniff
{

   
/**
     * A list of forbidden functions with their alternatives.
     *
     * The value is NULL if no alternative exists. IE, the
     * function should just not be used.
     *
     * @var array<string, string|null>
     */
   
public $forbiddenFunctions = [];


   
/**
     * Constructor.
     *
     * Uses the Reflection API to get a list of deprecated functions.
     */
   
public function __construct()
    {
       
$functions = get_defined_functions();

        foreach (
$functions['internal'] as $functionName) {
           
$function = new \ReflectionFunction($functionName);

            if (
$function->isDeprecated() === true) {
               
$this->forbiddenFunctions[$functionName] = null;
            }
        }

    }
//end __construct()


    /**
     * Generates the error or warning for this sniff.
     *
     * @param \PHP_CodeSniffer\Files\File $phpcsFile The file being scanned.
     * @param int                         $stackPtr  The position of the forbidden function
     *                                               in the token array.
     * @param string                      $function  The name of the forbidden function.
     * @param string                      $pattern   The pattern used for the match.
     *
     * @return void
     */
   
protected function addError($phpcsFile, $stackPtr, $function, $pattern=null)
    {
       
$data  = [$function];
       
$error = 'Function %s() has been deprecated';
       
$type  = 'Deprecated';

        if (
$this->error === true) {
           
$phpcsFile->addError($error, $stackPtr, $type, $data);
        } else {
           
$phpcsFile->addWarning($error, $stackPtr, $type, $data);
        }

    }
//end addError()


}//end class