phpday 2025 - Call For Papers

tidy::cleanRepair

tidy_clean_repair

(PHP 5, PHP 7, PHP 8, PECL tidy >= 0.5.2)

tidy::cleanRepair -- tidy_clean_repairExecute configured cleanup and repair operations on parsed markup

Descrizione

Stile orientato agli oggetti

public tidy::cleanRepair(): bool

Stile procedurale

tidy_clean_repair(tidy $tidy): bool

This function cleans and repairs the given tidy tidy.

Elenco dei parametri

tidy

L'oggetto Tidy

Valori restituiti

Restituisce true in caso di successo, false in caso di fallimento.

Esempi

Example #1 tidy::cleanrepair() example

<?php
$html
= '<p>test</I>';

$tidy = tidy_parse_string($html);
$tidy->cleanRepair();

echo
$tidy;
?>

Il precedente esempio visualizzerà:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title></title>
</head>
<body>
<p>test</p>
</body>
</html>

Vedere anche:

add a note

User Contributed Notes 1 note

up
2
steven at nevvix dot com
6 years ago
<?php
/**
* UTF-8 HTML5-compatible Tidy
*
* @param string $html
* @param array $config
* @param string $encoding
* @link http://tidy.sourceforge.net/docs/quickref.html
*/
function tidy_html5($html, array $config = [], $encoding = 'utf8') {
if (!
extension_loaded('tidy')) {
throw new
\Exception("Tidy extension is missing!");
return;
}
$config += [
'clean' => TRUE,
'doctype' => 'omit',
'indent' => 2, // auto
'output-html' => TRUE,
'tidy-mark' => FALSE,
'wrap' => 0,
// HTML5 tags
'new-blocklevel-tags' => 'article aside audio bdi canvas details dialog figcaption figure footer header hgroup main menu menuitem nav section source summary template track video',
'new-empty-tags' => 'command embed keygen source track wbr',
'new-inline-tags' => 'audio command datalist embed keygen mark menuitem meter output progress source time video wbr',
];
$html = tidy_parse_string($html, $config, $encoding);
tidy_clean_repair($html);
return
'<!DOCTYPE html>' . PHP_EOL . $html;
}

$html = '<z/><p><a href="#">Link</a></p><p>Second para</p>';
echo
tidy_html5($html);

Output:
<!
DOCTYPE html>
<
html>
<
head>
<
title></title>
</
head>
<
body>
<
p><a href="#">Link</a></p>
<
p>Second para</p>
</
body>
</
html>
To Top