Duplicate code is one of the most pungent code smells. A rule that is often used is to re-structure code once it is duplicated in three or more places.
Common duplication problems, and corresponding solutions are:
| 1 | <?php  | 
            ||
| 16 | class ForbiddenGlobalVariableVariableSniffTest extends BaseSniffTest  | 
            ||
| 17 | { | 
            ||
| 18 | /**  | 
            ||
| 19 | * Verify that checking for a specific version works  | 
            ||
| 20 | *  | 
            ||
| 21 | * @return void  | 
            ||
| 22 | */  | 
            ||
| 23 | public function testGlobalVariableVariable()  | 
            ||
| 24 |     { | 
            ||
| 25 |         $file = $this->sniffFile('sniff-examples/forbidden_global_variable_variable.php', '5.6'); | 
            ||
| 26 | $this->assertNoViolation($file, 3);  | 
            ||
| 27 | |||
| 28 |         $file = $this->sniffFile('sniff-examples/forbidden_global_variable_variable.php', '7.0'); | 
            ||
| 29 | $this->assertError($file, 3, "Global with variable variables are not allowed since PHP 7.0");  | 
            ||
| 30 | }  | 
            ||
| 31 | }  | 
            ||
| 32 |