for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/**
* Created by Ruslan Molodyko.
* Date: 10.09.2016
* Time: 17:48
*/
namespace samsonframework\container\definition\analyzer\annotation;
use samsonframework\container\definition\analyzer\ClassAnalyzerInterface;
use samsonframework\container\definition\analyzer\DefinitionAnalyzer;
use samsonframework\container\definition\ClassDefinition;
class AnnotationClassAnalyzer extends AbstractAnnotationAnalyzer implements ClassAnalyzerInterface
{
public function analyze(
DefinitionAnalyzer $analyzer,
\ReflectionClass $reflectionClass,
ClassDefinition $classDefinition
) {
$annotations = $this->reader->getClassAnnotations($reflectionClass);
$annotations
This check looks for variable assignements that are either overwritten by other assignments or where the variable is not used subsequently.
$myVar = 'Value'; $higher = false; if (rand(1, 6) > 3) { $higher = true; } else { $higher = false; }
Both the $myVar assignment in line 1 and the $higher assignment in line 2 are dead. The first because $myVar is never used and the second because $higher is always overwritten for every possible time line.
$myVar
$higher
}