在PHP中格式化长字符串HTML的最佳方法是什么?

dcl*_*901 4 php code-formatting

我知道这确实是一个主观问题,但对于最佳实践(和可读性),我似乎无法修复格式化长字符串HTML的最佳方法.我通常这样做:

echo '
<div>
    <p>Content Inside</p>
    <div class="subbox">
        <ul>
            <li>etc.</li>
            <li>etc.</li>
            <li>etc.</li>
            <li>etc.</li>
        </ul>
    </div>
</div>
';
Run Code Online (Sandbox Code Playgroud)

但我仍然不喜欢结果,特别是如果它出现在一大块代码的中间.它只是感觉凌乱.

Sam*_*son 9

您可以跳出PHP并直接输入HTML:

<?php $var = "foo"; ?>
<div>
  <ul>
    <li>Foo</li>
  </ul>
</div>
<?php $foo = "var"; ?>
Run Code Online (Sandbox Code Playgroud)

如果您所做的只是回声/打印,我认为这更清洁.此外,您不需要在HTML本身内运行并转义单引号/双引号.

如果需要将HTML存储在变量中,可以使用HEREDOC:

$str = <<<EOD
<div>
  <ul>
    <li>Foo</li>
  </ul>
</div>
EOD;
Run Code Online (Sandbox Code Playgroud)