Change array dim fetch to method call
-$object['key'];
-$object['key'] = 'value';
-isset($object['key']);
-unset($object['key']);
+$object->get('key');
+$object->set('key', 'value');
+$object->has('key');
+$object->unset('key');
Configure your rector.php:
<?php
use PHPStan\Type\ObjectType;
use Rector\Config\RectorConfig;
use Rector\Transform\Rector\ArrayDimFetch\ArrayDimFetchToMethodCallRector;
use Rector\Transform\ValueObject\ArrayDimFetchToMethodCall;
return RectorConfig::configure()
->withConfiguredRule(ArrayDimFetchToMethodCallRector::class, [
new ArrayDimFetchToMethodCall(new ObjectType('SomeClass'), 'get', 'set', 'has', 'unset'),
]);