I use the tidy extension in my board, but i wanted to restric some html-tags and attributes for my users... I found out, that if you use cleanRepair(), the object will be the string... sounds strange, watch that:
<?php
class myTidy extends tidy {
public function __construct($string, $config = array(), $encoding = "utf8") {
if(!is_array($config) || empty($config)) // default config
$config = array(
"doctype" => "omit",
"logical-emphasis" => true,
"show-body-only" => true,
"char-encoding" => "utf8",
"ident" => true,
"wrap" => 0
);
if(!is_string($encoding)) // default encoding
$encoding = "utf8";
parent::parseString($string, $config, $encoding);
parent::cleanRepair();
return parent; // !!! Return the object !!!
}
}
?>
And now with "myFunctions" (e.g. restrict attributes / tags via regEx):
<?php
class myTidy extends tidy {
public function __construct($string, $config = array(), $encoding = "utf8") {
if(!is_array($config) || empty($config))
$config = array(
"doctype" => "omit",
"logical-emphasis" => true,
"show-body-only" => true,
"char-encoding" => "utf8",
"ident" => true,
"wrap" => 0
);
if(!is_string($encoding))
$encoding = "utf8";
parent::parseString($string, $config, $encoding);
parent::cleanRepair();
$string = myFunctions(parent);
return $string;
}
}
?>
tidy_clean_repair
(PHP 5, PECL tidy:0.5.2-1.2)
tidy_clean_repair — Wykonuje operacje czyszczenia i naprawiania znaczników zgodnie z określoną konfiguracją
Opis
Styl proceduralny:
bool tidy_clean_repair
( tidy $obiekt
)
Styl zorientowany obiektowo:
bool tidy->cleanRepair
( void
)
Ta funkcja czyści i naprawia podany obiekt tidy.
Example #1 Przykład tidy_clean_repair()
<?php
$html = '<p>test</I>';
$tidy = tidy_parse_string($html);
tidy_clean_repair($tidy);
echo $tidy;
?>
Powyższy przykład wyświetli:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title></title> </head> <body> <p>test</p> </body> </html>
Patrz także: tidy_repair_file() i tidy_repair_string().
tidy_clean_repair
david dot thalmann at gmail dot com
26-Jun-2007 04:17
26-Jun-2007 04:17
