diff --git a/Symfony/CS/Fixer/ElseifFixer.php b/Symfony/CS/Fixer/ElseifFixer.php index b52069ad349..0b6ae5c32aa 100644 --- a/Symfony/CS/Fixer/ElseifFixer.php +++ b/Symfony/CS/Fixer/ElseifFixer.php @@ -21,7 +21,7 @@ class ElseifFixer implements FixerInterface public function fix(\SplFileInfo $file, $content) { // [Structure] elseif, not else if - return str_replace('} else if (', '} elseif (', $content); + return preg_replace('/} else +if \(/', '} elseif (', $content); } public function getLevel() diff --git a/Symfony/CS/Tests/Fixer/ElseifFixerTest.php b/Symfony/CS/Tests/Fixer/ElseifFixerTest.php index b286106937b..5163484fe5b 100644 --- a/Symfony/CS/Tests/Fixer/ElseifFixerTest.php +++ b/Symfony/CS/Tests/Fixer/ElseifFixerTest.php @@ -32,6 +32,11 @@ public function testThatInvalidElseIfIsFixed() 'if ($some) { $test = true } elseif ($some != "test") { $test = false; }', $fixer->fix($this->getFileMock(), 'if ($some) { $test = true } else if ($some != "test") { $test = false; }' )); + + $this->assertSame( + 'if ($some) { $test = true } elseif ($some != "test") { $test = false; }', + $fixer->fix($this->getFileMock(), 'if ($some) { $test = true } else if ($some != "test") { $test = false; }' + )); } /**