最近在开发一个项目,需要频繁地检查模板引擎生成的HTML结构。然而,输出的HTML总是挤成一团,没有任何缩进和换行,导致我在浏览器开发者工具中调试时非常痛苦。每次都需要手动格式化,或者复制到外部工具中处理,效率低下且容易出错。我尝试过一些PHP内置的HTML格式化方法,但它们的问题在于会“修正”HTML,而不是仅仅“美化”,这与我需要查看原始输出以定位问题的初衷相悖。正当我为此感到头疼时,我发现了gajus/dindent这个Composer库,它完美地解决了我的困扰。
gajus/dindent是一个专门用于HTML缩进的PHP库,它的核心理念是:只负责缩进,不触碰你的HTML结构。这意味着,无论你的HTML是否完全符合规范,dindent都会忠实地为你添加缩进,让你能清晰地看到模板引擎究竟生成了什么,这对于调试来说至关重要。它不会像DOMDocument或Tidy那样尝试修复或删除不合法的HTML标签,而是保留原始的、甚至是“错误”的结构,仅仅通过美化排版来提升可读性。
如何使用 gajus/dindent 解决问题
使用gajus/dindent非常简单,首先通过Composer将其安装到你的项目中:
composer require gajus/dindent
安装完成后,你就可以在PHP代码中轻松地使用它来格式化HTML字符串了。下面是一个简单的示例:
