From f94d7d808d2e1c835eb294aff65ba8328f7e3c43 Mon Sep 17 00:00:00 2001 From: jrfnl Date: Tue, 15 May 2018 03:14:30 +0200 Subject: [PATCH] Generic/MultipleStatementAlignment: break out of the statement block when a PHP close tag is encountered Includes unit test. --- .../Formatting/MultipleStatementAlignmentSniff.php | 5 +++++ .../MultipleStatementAlignmentUnitTest.inc | 14 ++++++++++++++ .../MultipleStatementAlignmentUnitTest.inc.fixed | 14 ++++++++++++++ 3 files changed, 33 insertions(+) diff --git a/src/Standards/Generic/Sniffs/Formatting/MultipleStatementAlignmentSniff.php b/src/Standards/Generic/Sniffs/Formatting/MultipleStatementAlignmentSniff.php index 5c6df984e9..b470153acf 100644 --- a/src/Standards/Generic/Sniffs/Formatting/MultipleStatementAlignmentSniff.php +++ b/src/Standards/Generic/Sniffs/Formatting/MultipleStatementAlignmentSniff.php @@ -147,6 +147,11 @@ public function checkAlignment($phpcsFile, $stackPtr) break; } + if ($tokens[$assign]['code'] === T_CLOSE_TAG) { + // Breaking out of PHP ends the assignment block. + break; + } + if ($tokens[$assign]['code'] === T_OPEN_SHORT_ARRAY && isset($tokens[$assign]['bracket_closer']) === true ) { diff --git a/src/Standards/Generic/Tests/Formatting/MultipleStatementAlignmentUnitTest.inc b/src/Standards/Generic/Tests/Formatting/MultipleStatementAlignmentUnitTest.inc index 3f22ea5aa5..e82bf26b2e 100644 --- a/src/Standards/Generic/Tests/Formatting/MultipleStatementAlignmentUnitTest.inc +++ b/src/Standards/Generic/Tests/Formatting/MultipleStatementAlignmentUnitTest.inc @@ -373,3 +373,17 @@ $foo = [ $abc = 'something'; if ($foo) {} $defghi = 'longer something'; + + public function get_location_details( $location_id, $atts ) { + $coords_lat = 'abc'; + $coords_long = 'def'; + ?> + +
+ +
+ + +
+ +
+