| Conditions | 3 | 
| Paths | 3 | 
| Total Lines | 19 | 
| Code Lines | 11 | 
| Lines | 0 | 
| Ratio | 0 % | 
| Changes | 1 | ||
| Bugs | 0 | Features | 1 | 
| 1 | <?php  | 
            ||
| 39 | public function applyToNode($node)  | 
            ||
| 40 |     { | 
            ||
| 41 | $ref = $node->getInstruction($this);  | 
            ||
| 42 | |||
| 43 | $check = $this->source->get($ref);  | 
            ||
| 44 | |||
| 45 |         if (!isset($check)) { | 
            ||
| 46 | $node->setResult(null);  | 
            ||
| 47 | |||
| 48 |             foreach ($node as $prop => $value) { | 
            ||
| 49 | unset($node->$prop); // Remove all other properties, including processing instructions  | 
            ||
| 50 | }  | 
            ||
| 51 |         } else { | 
            ||
| 52 | $result = $node->getResult();  | 
            ||
| 53 |             $result->{$this->property} = null; | 
            ||
| 54 | |||
| 55 | $node->setResult($result);  | 
            ||
| 56 | }  | 
            ||
| 57 | }  | 
            ||
| 58 | }  | 
            ||
| 59 | 
This check looks for multiple assignments in successive lines of code. It will report an issue if the operators are not in a straight line.
To visualize
will produce issues in the first and second line, while this second example
will produce no issues.