-1

この HTMLTidy クラスを使用するにはどうすればよいですか?

$input例: HTML を含む変数を美しくしたい。私はこれを試しました:

$input = "<html><head><title>The Last Page of the Internet</title></head><body><center><h1><b><u>Attention:</u></b></h1><p><br><strong>You have reached the very last page of the Internet.</strong></p><p><br><strong>We hope you have enjoyed your browsing.</strong></p><p><br><strong>Now turn off your computer and go outside.</strong></p></center></body></html>";
include ('class.htmltidy.php');
$html = htmltidy($input);
echo $html;

しかし、それは機能していません。

HTMLTidy クラスのソースは、ここにあります。

4

1 に答える 1

0

入力HTMLを「美化」したいとします。それが何を意味するのかを知る方法はありません。そうは言っても、そのhtmltidyクラスが何をするのか正確にはわかりません。「解析」という1つの方法があります。私は試した:

$input = "<html><head><title>The Last Page of the Internet</title></head><body><center><h1><b><u>Attention:</u></b></h1><p><br><strong>You have reached the very last page of the Internet.</strong></p><p><br><strong>We hope you have enjoyed your browsing.</strong></p><p><br><strong>Now turn off your computer and go outside.</strong></p></center></body></html>";

$tidy = new htmltidy();
$tidy->parse($input);
print_r($tidy->html);

しかし、未定義のインデックスに関するいくつかのPHP通知を受け取り、html配列は空でした。繰り返しますが、私はあなたが何をしたいのか正確にはわかりません。それが何であれ、バグが含まれているように見えるので、このhtmltidyクラスを放棄します。

さて、html文字列をフォーマットしたい場合は、phptidy拡張子をお勧めします。インデントを使用してhtml文字列をフォーマットする方法は次のとおりです。

$tidy = tidy_parse_string($input, array(
    'output-html' => true,
    'indent' => true,
));
$tidy->cleanRepair(); //if you might have markup errors
echo $tidy;

詳細については、tidy_parse_stringのドキュメントを参照してください。

于 2012-12-01T18:24:58.987 に答える