The configuration reference for Tidy has moved to https://api.html-tidy.org/
(PHP 5, PHP 7, PHP 8, PECL tidy >= 0.5.2)
tidy::parseString -- tidy_parse_string — Bir dizge olarak belirtilen bir belgeyi çözümler
Nesne yönelimli kullanım
$girdi
, array|string|null $ayarlar
= null
, ?string $kodlama
= null
): boolYordamsal kullanım
$girdi
, array|string|null $ayarlar
= null
, ?string $kodlama
= null
): tidy|false
girdi
olarak belirtilen bir belgeyi çözümler.
girdi
Çözümlenecek veri.
ayarlar
Bir dizge veya bir dizi olarak belirtilebilir. Dizge verildiği takdirde yapılandırma dosyasının ismi olarak ele alınır. Dizi olarak verildiğinde ise dizinin yapılandırma seçeneklerini içerdiği varsayılır.
Seçeneklerin açıklamaları için » http://api.html-tidy.org/#quick-reference adresine bakınız.
kodlama
Belge girdi çıktı kodlaması belirtilir. Olası değerler:
ascii
, latin0
,
latin1
, raw
,
utf8
, iso2022
,
mac
, win1252
,
ibm858
, utf16
,
utf16le
, utf16be
,
big5
ve shiftjis
.
tidy::parseString() başarı durumunda true
,
tidy_parse_string() ise başarı durumunda yeni bir
tidy nesnesi döndürür. Her ikisi de başarısızlık
durumunda false
döndürür.
Sürüm: | Açıklama |
---|---|
8.0.0 |
ayarlar ve kodlama
artık null olabiliyor.
|
Örnek 1 - tidy::parseString() örneği
<?php
ob_start();
?>
<html>
<head>
<title>deneme</title>
</head>
<body>
<p>hatalı <br>başka bir satır</i>
</body>
</html>
<?php
$buffer = ob_get_clean();
$config = array('indent' => TRUE,
'output-xhtml' => TRUE,
'wrap' => 200);
$tidy = tidy_parse_string($buffer, $config, 'UTF8');
$tidy->cleanRepair();
echo $tidy;
?>
Yukarıdaki örneğin çıktısı:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> deneme </title> </head> <body> <p> hatalı<br /> başka bir satır </p> </body> </html>
The configuration reference for Tidy has moved to https://api.html-tidy.org/
<?php
/**
* Simpler version without pretty print config options.
*/
function tidy_html5($html, array $config = [], $encoding = 'utf8') {
$config += [
'doctype' => '<!DOCTYPE html>',
'drop-empty-elements' => 0,
'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',
'tidy-mark' => 0,
];
$html = tidy_parse_string($html, $config, $encoding); // doctype not inserted
tidy_clean_repair($html); // doctype inserted
return $html;
}
$html = '</z><p><a href="#">Link</a></p><p><img src="logo.png"/>Seçond para</p><i class="fa"></i><p></p>';
echo tidy_html5($html);
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<p><a href="#">Link</a></p>
<p><img src="logo.png">Seçond para</p>
<i class="fa"></i>
<p></p>
</body>
</html>
echo tidy_html5($html, ['indent'=>2, 'indent-spaces'=>4]);
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<p><a href="#">Link</a></p>
<p><img src="logo.png">Seçond para</p><i class="fa"></i>
<p></p>
</body>
</html>
echo tidy_html5($html, ['indent'=>1], 'ascii');
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<p>
<a href="#">Link</a>
</p>
<p>
<img src="logo.png">Seçond para
</p><i class="fa"></i>
<p></p>
</body>
</html>
echo tidy_html5($html, ['show-body-only'=>1]);
<p><a href="#">Link</a></p>
<p><img src="logo.png">Seçond para</p>
<i class="fa"></i>
<p></p>
<?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') {
$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>