在PHP中整理HTML5输出缩进

时间:2011-02-25 11:21:09

标签: php html indentation

我的Web应用程序生成HTML5输出,作为可变数量视图的串联。最终的结果是一堆压痕:

            </div>
        </div>

        <div id="content">

<div id="question-header">
    <h1>

我想缩进代码以隐藏单个视图的来源并使输出更容易理解。

我已经调查了Tidy PHP extension,但我尝试使用HTML5的所有尝试都产生了不正确的缩进。

2 个答案:

答案 0 :(得分:7)

如果您想隐藏各个视图的来源,我建议您缩小HTML。这将有减少文档大小的额外好处。

至于使HTML输出更容易遵循,浏览器附带调试实用程序,以缩进格式解析和呈现DOM树,例如, https://trac.webkit.org/wiki/WebInspectorhttp://getfirebug.com/

答案 1 :(得分:2)

最接近你在PHP领域寻找的是Dindent,https://github.com/gajus/dindent。 Dindent是一个HTML美化器,它使用正则表达式缩进标记。这与Tidy不同,Tidy充当DOM解析器。

来自文档:

  

有充分的理由不使用正则表达式来解析HTML。   但是,DOM解析器将重建整个HTML文档。它会添加   缺少标签,关闭打开的块标签,或删除任何不是的标签   有效的HTML。这就是Tidy所做的,DOM等等。这种行为是   调试HTML输出时不合需要。基于正则表达式的解析器不会   重建文档。 Dindent只会在没有缩进的情况下添加缩进   否则会影响标记。

Dindent唯一的目的是缩进HTML标记。它允许配置哪些元素作为内联处理,哪些元素作为块处理。