PHP code example of php-static-analysis / rector-rule
1. Go to this page and download the library: Download php-static-analysis/rector-rule library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
php-static-analysis / rector-rule example snippets
use PhpStaticAnalysis\Attributes\Type;
use PhpStaticAnalysis\Attributes\Param;
use PhpStaticAnalysis\Attributes\Returns;
class ArrayAdder
{
#[Type('array<string>')]
private array $result;
#[Param(array1: 'array<string>')]
#[Param(array2: 'array<string>')]
#[Returns('array<string>')]
public function addArrays(array $array1, array $array2): array
{
$this->array = $array1 + $array2;
return $this->array;
}
}
use Rector\Config\RectorConfig;
use PhpStaticAnalysis\RectorRule\Set\PhpStaticAnalysisSetList;
return RectorConfig::configure()
->withSets([
PhpStaticAnalysisSetList::ANNOTATIONS_TO_ATTRIBUTES
])
->withImportNames();
use Rector\Config\RectorConfig;
use Rector\Php80\ValueObject\AnnotationToAttribute;
use PhpStaticAnalysis\Attributes\Param;
use PhpStaticAnalysis\Attributes\Returns;
use PhpStaticAnalysis\RectorRule\AnnotationsToAttributesRector;
return RectorConfig::configure()
->withConfiguredRule(
AnnotationsToAttributesRector::class,
[
new AnnotationToAttribute('param', Param::class),
new AnnotationToAttribute('return', Returns::class),
]
);
use Rector\Config\RectorConfig;
use PhpStaticAnalysis\RectorRule\AnnotationsToAttributesRector;
return RectorConfig::configure()
->withConfiguredRule(
AnnotationsToAttributesRector::class,
[
'excludeAnnotations' => ['throws', 'deprecated'],
]
);
use PhpStaticAnalysis\RectorRule\AnnotationsToAttributesRector;
use Rector\Config\RectorConfig;
...
return RectorConfig::configure()
...
->withConfiguredRule(
AnnotationsToAttributesRector::class,
[
'addParamAttributeOnParameters' => true,
]
);
use PhpStaticAnalysis\RectorRule\AnnotationsToAttributesRector;
use Rector\Config\RectorConfig;
...
return RectorConfig::configure()
...
->withConfiguredRule(
AnnotationsToAttributesRector::class,
[
'addAssertAttributeOnParameters' => true,
]
);
use PhpStaticAnalysis\RectorRule\AnnotationsToAttributesRector;
use Rector\Config\RectorConfig;
...
return RectorConfig::configure()
...
->withConfiguredRule(
AnnotationsToAttributesRector::class,
[
'useTypeAttributeForReturnAnnotation' => true,
]
);
use PhpStaticAnalysis\RectorRule\AnnotationsToAttributesRector;
use Rector\Config\RectorConfig;
...
return RectorConfig::configure()
...
->withConfiguredRule(
AnnotationsToAttributesRector::class,
[
'usePropertyAttributeForVarAnnotation' => true,
]
);
use PhpStaticAnalysis\RectorRule\AnnotationsToAttributesRector;
use Rector\Config\RectorConfig;
...
return RectorConfig::configure()
...
->withConfiguredRule(
AnnotationsToAttributesRector::class,
[
'useTypeAttributeForTypeClassAnnotation' => true,
]
);
composer
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.