Tidy 示例

这个简单的示例展示了基本的 Tidy 用法。

示例 #1 基本 Tidy 用法

<?php
ob_start
();
?>
<html>a html document</html>
<?php
$html
= ob_get_clean();

// 指定配置
$config = array(
'indent' => true,
'output-xhtml' => true,
'wrap' => 200);

// Tidy
$tidy = new tidy;
$tidy->parseString($html, $config, 'utf8');
$tidy->cleanRepair();

// 输出
echo $tidy;
?>

添加笔记

用户贡献笔记 3 个笔记

gk at anuary dot com
10 年前
如果您正在寻找 HTML 美化器(一种用于缩进脚本生成的 HTML 输出的工具),Tidy 扩展可能不是正确的工具。

首先,您不应该在生产代码中使用 Tidy 或其他替代方案(例如 HTML Purifier)。HTML 后处理是一个相对资源密集的任务,尤其是如果底层实现依赖于 DOM API 的话。但是,除了性能之外,生产中的 HTML 美化可能会隐藏更严重的问题,这些问题很难追溯,因为输出将与输入不一致。

如果您只是为了开发目的而进行缩进(一致、可读的输出格式),那么您可能会考虑使用依赖于正则表达式的实现。为此,我编写了 https://github.com/gajus/dindent。前面提到的实现与后者的区别在于,基于正则表达式的实现不会尝试对您的输出进行清理、验证或其他操作,而只是确保正确的缩进。
i dot c dot lovett at NOSPAM dot gmail dot com
12 年前
任何尝试在 http://tidy.sourceforge.net/docs/quickref.html#indent 文档中指定 "indent: auto" 的人

<?php
$tidy_options
= array('indent' => 'auto'); // 不起作用
$tidy_options = array('indent' => 2); // 等效于 auto

$tidy = new Tidy();
$tidy->parseString($html, $tidy_options);
?>
mmeisam at gmail dot com
3 年前
如果您使用 tidy 来清理 HTML,但只希望格式化字符串而不是整个 html 和 head 标签,您可以使用以下配置数组

<?php
$config
= [
'indent' => true,
'output-xhtml' => false,
'show-body-only' => true
];

$tidy = new tidy;
$tidy->parseString($your_html_code, $config, 'utf8');
$tidy->cleanRepair();

echo
$tidy;
?>
To Top