在PHP中修复格式错误的HTML?

时间:2009-01-01 01:14:16

标签: php html parsing

我正在从用户提供的片段构建一个大型HTML文档,这些片段具有以各种方式出现畸形的烦人习惯。浏览器非常强大且足够宽容,但我希望能够验证并(理想情况下)修复任何格式错误的HTML(如果可能的话)。例如:

<td><b>Title</td>

可以合理地固定为:

<td><b>Title</b></td>

有没有办法在PHP中轻松完成这项工作?

3 个答案:

答案 0 :(得分:9)

您可以使用HTML Tidy,手册页为here

答案 1 :(得分:3)

我强烈推荐HTML Purifier。从他们的网站:

  

HTML Purifier符合标准   用PHP编写的HTML过滤器库。   HTML Purifier不仅会删除所有内容   恶意代码(更好地称为XSS)   经过全面审核,安全无缺   容许白名单,它也会   确保您的文件是标准   合规,只有可以实现的东西   具有全面的知识   W3C的规格。厌倦了使用   BBCode由于当前的景观   缺陷或不安全的HTML过滤器?   有一个WYSIWYG编辑器,但从来没有   能用吗?寻找   高品质,符合标准,   开源组件   你正在建设的申请? HTML   净化器适合你!

答案 2 :(得分:1)

如果你不能使用Tidy(有时托管服务不要激活这个php模块),你可以使用这个PHP类:http://www.barattalo.it/html-fixer/