strStartWithMatchAndRefactors = [$strncmpMatchAndRefactor, $substrMatchAndRefactor, $strposMatchAndRefactor];
}
public function provideMinPhpVersion() : int
{
return PhpVersionFeature::STR_STARTS_WITH;
}
public function getRuleDefinition() : RuleDefinition
{
return new RuleDefinition('Change helper functions to str_starts_with()', [new CodeSample(<<<'CODE_SAMPLE'
class SomeClass
{
public function run()
{
$isMatch = substr($haystack, 0, strlen($needle)) === $needle;
$isNotMatch = substr($haystack, 0, strlen($needle)) !== $needle;
}
}
CODE_SAMPLE
, <<<'CODE_SAMPLE'
class SomeClass
{
public function run()
{
$isMatch = str_starts_with($haystack, $needle);
$isNotMatch = ! str_starts_with($haystack, $needle);
}
}
CODE_SAMPLE
)]);
}
/**
* @return array