我可以使用PHP“修复”错误放置的HTML标签吗?

时间:2014-06-01 18:42:09

标签: php html

是否有一种快速简便的方法来修复网页文档中错放的HTML标记?如:

<strong><span style="border:1px;">Text</strong></span>
   /\                                    /\
   |______________________________________|

看起来像:

<strong><span style="border:1px;">Text</span></strong>

编辑:您建议使用HTML修复程序,但我正在寻找的是一种功能类型的解决方案。如果您认为这是BBcode会有帮助吗? [b][u]Text[\b][\u]

3 个答案:

答案 0 :(得分:1)

我认为最好的解决方案是使用Html Purifier,效果非常好:

演示:http://htmlpurifier.org/demo.php

完美地使用您的输入。

答案 1 :(得分:0)

计算机应该如何知道span是否在strong内,或者相反?

快速简便的方式&#34;是通过HTML验证器运行您的文档,然后使用您的noggin和键盘修复它识别的问题。

答案 2 :(得分:0)

您可以使用tidy::repairFile()tidy::repairString(),但修复并不简单,因此您无法确定结果是否符合您的预期。文档中的示例:

<?php
$file = 'file.html';

$tidy = new tidy();
$repaired = $tidy->repairfile($file);
rename($file, $file . '.bak');

file_put_contents($file, $repaired);
?>