$HTMLcodeOutput = tidy_repair_string($HTMLcode, array('show-body-only' => true, 'indent' => true));
将删除$ HTMLcode'行尾。 例如:
that's in the main box
##What does it do ?
it does everything
##Output:
将输出
that's in the main box ##What does it do ? it does everything
##Output: I will giv ea a grat output
如果此字符串未回显到<
,则不会出现问题。前>之后标记。因此,\ n或\ r \ n字符很重要。 我查看了文档,但找不到任何明显的内容。
有没有办法保留这些行返回字符?
(在使用整齐的字符串修复之前添加标签是一个坏主意,因为它会导致回显浏览器中可见的< pre>标签,字符串(已解码),而不是标签。)
答案 0 :(得分:3)
如果我理解正确,你试图将html格式化为人类可读性,并且你不想使用“pre”标签强制整理以保留空白,因为你将通过htmlspecialchars运行整齐的输出将其输出到浏览器。
为什么不在清洁后删除那些“预”标签?它看起来像这样:
$config = array('show-body-only' => true, 'indent' => true);
$HTMLcodeOutput = tidy_repair_string('<pre>'.$HTMLcode.'</pre>', $config);
$HTMLcodeOutput = substr($HTMLcodeOutput, 5, -6);