我可以吗;“固定”;使用PHP错误放置HTML标记?
有没有一种快速简便的方法来修复web文档中错误放置的HTML标记?例如:我可以吗;“固定”;使用PHP错误放置HTML标记?,php,html,Php,Html,有没有一种快速简便的方法来修复web文档中错误放置的HTML标记?例如: <strong><span style="border:1px;">Text</strong></span> /\ /\ |______________________________________| 文本 /\ /\ |
<strong><span style="border:1px;">Text</strong></span>
/\ /\
|______________________________________|
文本
/\ /\
|______________________________________|
所以它看起来像:
<strong><span style="border:1px;">Text</span></strong>
文本
编辑:您建议使用HTML修复程序,但我要寻找的是函数类型解决方案。如果你认为这是BBcode,那会有帮助吗?code>[b][u]Text[\b][\u]计算机如何知道您的意思是让
span
位于strong
内部,还是相反
“快速简便的方法”是通过HTML验证程序运行文档,然后使用noggin和键盘修复文档识别的问题。您可以使用或,但修复并不简单,因此您永远无法确定结果是否符合预期。文档中的示例:
<?php
$file = 'file.html';
$tidy = new tidy();
$repaired = $tidy->repairfile($file);
rename($file, $file . '.bak');
file_put_contents($file, $repaired);
?>
我认为最好的解决方案是使用,效果非常好: 演示:
可以完美地处理您的输入。它适用于一个简单的示例,如本例,但我确实有更复杂的结构,并且在这些结构上失败。@Matt有许多HTML修复程序,请查看它们。如果没有一些使用htmlpurifier不起作用的例子,就很难推荐另一个。优先考虑第一个打开的标记将是一个好的开始,即使它在标记方面会失败,但无论如何都会起作用