Add override attribute to overridden methods
class ParentClass
{
public function foo()
{
echo 'default';
}
}
final class ChildClass extends ParentClass
{
+ #[\Override]
public function foo()
{
echo 'override default';
}
}
Configure your rector.php:
<?php
use Rector\Config\RectorConfig;
use Rector\Php83\Rector\ClassMethod\AddOverrideAttributeToOverriddenMethodsRector;
return RectorConfig::configure()
->withConfiguredRule(AddOverrideAttributeToOverriddenMethodsRector::class, [
'allow_override_empty_method' => false,
]);
interface ParentInterface
{
public function foo();
}
final class ChildClass implements ParentInterface
{
+ #[\Override]
public function foo()
{
echo 'implements interface';
}
}
Configure your rector.php:
<?php
use Rector\Config\RectorConfig;
use Rector\Php83\Rector\ClassMethod\AddOverrideAttributeToOverriddenMethodsRector;
return RectorConfig::configure()
->withConfiguredRule(AddOverrideAttributeToOverriddenMethodsRector::class, [
'add_to_interface_methods' => true,
]);