<?php 
    // Not embedded. Do not check here. 
    echo 'Long open tag test case file'; 
?> 
<html> 
<head> 
<title><?php echo $title; ?></title> 
<script><?php echo $script; ?></script> 
</head> 
<body> 
    <?php 
    echo $body; 
    ?> 
    hello 
    <?php 
    echo $moreBody; 
    ?> 
    <?php echo 'one'; ?> 
    <?php echo 'two'; ?> 
    <?php echo 'three;'; ?> 
    <?php echo 'fourA'; echo 'fourB;'; ?> 
    <?php echo 'fiveA'; echo 'fiveB;'; ?> 
 
 
    <?php 
    echo $start - $indent + $end; 
    ?> 
    <?php 
    echo $blankLines; 
        ?> 
 
    <?php 
    echo $closerNeedsOwnLine; 
    ?> 
    <?php 
    echo $openerNeedsOwnLine; 
    ?> 
 
        <?php 
        echo 'hi'; 
            ?> 
 
    <?php 
    echo 'hi'; 
    ?> 
</body> 
</html> 
<?php 
function test() 
{ 
    foreach ($root->section as $section) { 
        ?> 
        <table> 
            <?php 
            if ($foo) { 
            ?> 
            <tr> 
            </tr> 
            <?php 
            } 
            ?> 
        <?php 
        foreach ($bar as $bar) { 
            echo $bar; 
        } 
    } 
 
    foreach ($root->section as $section) { 
        ?> 
        <table> 
            <?php 
            if ($foo) { 
            ?> 
            <tr> 
            </tr> 
            <?php 
} 
            ?> 
        <?php 
        foreach ($bar as $bar) { 
            echo $bar; 
        } 
    } 
} 
 
echo 'goodbye'; 
 
function foo() 
{ 
    ?> 
    <a onClick="Javascript: set_hidden_field('<?php echo $link_offset - $num_per_page; ?>'); set_hidden_field('process_form', '0'); submit_form(); return false;"> 
    <?php 
 
} 
 
?> 
 
            <strong> 
            <?php 
            echo 'foo'; 
            ?> 
            </strong> 
 
?> 
 
</html> 
 
<?php if ($foo) { ?> 
<?php } ?> 
 
<?php echo 'okay'; // Something. ?> 
<?php echo 'too much space before close'; // Something. ?> 
<?php echo 'no space before close'; // Something. ?> 
 
<?php /* translators: okay */ ?> 
<?php /* translators: no space before close */ ?> 
<?php /* translators: too much space before close */ ?> 
 
<?php echo 'okay'; // phpcs:ignore Standard.Category.Sniff -- reason. ?> 
<?php echo 'too much space before close'; // phpcs:ignore Standard.Category.Sniff -- reason. ?> 
<?php echo 'no space before close'; // phpcs:ignore Standard.Category.Sniff -- reason. ?> 
 
<!-- 
Make sure the empty tag set fixer removes the complete line, including indentation for an empty tag set and ensure 
that the fixer does not remove too many tokens, like new lines tokens _before_ the affected line 
or indentation if there is code _after_ the removed empty tag. 
--> 
        <div></div> 
    <?php echo $i; ?> 
 
 
 
    <?php if (true) { ?><?php echo $i; ?>    <?php } ?> 
 
        <div></div> 
    <?php echo $i; ?> 
 
 
 
    <?php if (true) { ?><?php echo $i; ?>    <?php } ?> 
 
<!-- 
Make sure the "content after opener" fixer does not leave trailing space behind. 
--> 
    <?php 
    echo $openerNeedsOwnLine; 
    ?> 
 
<!-- 
Make sure the "content before closer" fixer does not leave trailing space behind. 
--> 
    <?php 
    echo $closerNeedsOwnLine; 
    ?> 
 
<!-- 
Make sure the "content after closer" fixer does not leave trailing space behind. 
--> 
    <?php 
    echo $closerNeedsOwnLine; 
    ?> 
    </div> 
 
    <?php 
    echo $closerNeedsOwnLine; 
    ?> 
    <?php echo $i; ?> 
 
<!-- 
Make sure the fixer does not add stray new lines when there are consecutive PHP blocks. 
--> 
<?php 
// Do something. 
    ?> 
    <?php 
    echo 'embedded'; 
    ?> 
    <?php 
    echo 'embedded'; 
    ?> 
    <?php 
    echo 'embedded'; 
    ?> 
 
<!-- 
Safeguard closing tag indent calculation for when the last content on the close tag line is a scope closer. 
--> 
<?php if (true) { ?> 
<?php 
    } 
    ?> 
 
<!-- 
Safeguard that blank lines between a PHP tag and a scope closer are not touched as the scope closer may have its own rules. 
--> 
    <?php if ($foo) { ?> 
    <tr></tr> 
    <?php 
 
 
} 
    ?> 
 
<!-- 
Safeguard correct content indent calculation. 
--> 
<?php 
echo 'indent is correct - first on line for open tag is open tag'; 
?> 
 
    <?php 
    echo 'indent is correct - first on line for open tag is inline HTML without content'; 
    ?> 
        <div> 
        <?php 
        echo 'indent is correct - first on line for open tag is inline HTML with content'; 
    ?> 
    <?php 
    echo 'indent is correct - first on line for open tag is whitespace'; 
?> 
 
<?php 
echo 'indent is incorrect - first on line for open tag is open tag'; 
?> 
 
    <?php 
    echo 'indent is incorrect - first on line for open tag is inline HTML'; 
    ?> 
        <div> 
        <?php 
        echo 'indent is correct - first on line for open tag is inline HTML with content'; 
    ?> 
    <?php 
    echo 'indent is incorrect - first on line for open tag is whitespace'; 
?> 
 
<!-- 
Safeguard correct close tag indent calculation. 
--> 
    <?php 
    /* Single line star comments are not problematic. */ 
    ?> 
 
    <?php 
    /* Subsequent lines of inline slash-star comments 
       contain the indent in the comment token. 
       This means the calculated indent would be 0 unless we 
       walk to the first line in the comment. */ 
    ?> 
 
<!-- 
Safeguard correct open tag indent calculation when the previous non-empty line contains a comment. 
--> 
    <?php 
    /* Subsequent lines of inline slash-star comments 
       contain the indent in the comment token. */ 
    ?> 
<?php 
echo 'the PHP tag is correctly indented as an indent less than the previous code indent is accepted'; 
 
    /* Subsequent lines of inline slash-star comments 
       contain the indent in the comment token. */ 
    ?> 
    <?php 
    echo 'the PHP tag is correctly indented'; 
 
    /* Subsequent lines of inline slash-star comments 
       contain the indent in the comment token. */ 
    ?> 
        <?php 
        echo 'the PHP tag is correctly indented as a diff of 4 is accepted'; 
 
    /* Subsequent lines of inline slash-star comments 
       contain the indent in the comment token. */ 
    ?> 
        <?php 
        echo 'the PHP tag is incorrectly indented as the indent is more than 4 different from the indent of the previous code'; 
    ?> 
 
<?PHP echo 'Uppercase long open tag'; ?> 
 
<?PHP echo 'Extra space after uppercase long open tag '; ?> 
 
<?php 
// This test case file MUST always end with an unclosed long open PHP tag (with this comment) to prevent 
// the tests running into the "last PHP closing tag excepted" condition breaking tests. 
// Tests related to that "last PHP closing tag excepted" condition should go in separate files. 
 
 |