php - 如何正确缩进 PHP/HTML 混合代码?

标签 php html indentation

混合使用 PHP 和 HTML 时,应该使用什么缩进样式?我是否缩进以使输出的 HTML 具有正确的缩进,或者使 PHP/HTML 组合看起来格式正确(因此更易于阅读)?

例如,假设我有一个 foreach 循环输出表格行。下面哪个是正确的?

PHP/HTML 混合看起来正确:

<table>
  <?php foreach ($rows as $row): ?>
    <tr>
      <?php if ($row->foo()): ?>
        <?php echo $row ?>
      <?php else: ?>
        Something else
      <?php endif ?>
    </tr>
  <?php endforeach ?>
</table>

输出的 HTML 看起来正确:

<table>
<?php foreach ($rows as $row): ?>
  <tr>
  <?php if ($row->foo()): ?>
    <?php echo $row ?>
  <?php else: ?>
    Something else
  <?php endif ?>
  </tr>
<?php endforeach ?>
</table>

我发现当我遇到这种情况时(非常频繁),我没有标准的风格可以使用。我知道可能没有“正确”的答案,但我很想听听其他开发者的想法。

最佳答案

PHP 和 HTML 都应该缩进,以便它们在源代码形式中相对于自身是正确的,而不管彼此和输出形式如何:

<table>
<?php foreach ($rows as $row): ?>
    <tr>
    <?php if ($row->foo()): ?>
        <?php echo $row ?>
    <?php else: ?>
        Something else
    <?php endif ?>
    </tr>
<?php endforeach ?>
</table>

关于php - 如何正确缩进 PHP/HTML 混合代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1155799/

相关文章:

c - Gnu Emacs 缩进我的 typedef

f# - F#中的空格和缩进

php - 无法显示查询结果中的一项 - PHP/MySQL

php - 提交INSERT后SQL显示没有记录

jquery - 如何从文件输入中获取文件的完整路径

html - 使 flex 元素采用内容宽度,而不是父容器的宽度

javascript - 缩进、 pretty-print 代码,包括 Django 模板标签、HTML、CSS 和 JavaScript

目录中特定文件的 PHP 列表

php - 给出警告 : mysqli_query() expects parameter 1 to be mysqli, null。当我尝试将数据库作为 OOP 对象连接时

javascript - 单击图像时 jQuery 单击不触发 - 隐藏/显示表格行