4

を使用すると、次のエラーが出力され$dom->loadHTML('<?xml version="1.0" encoding="UTF-8"?>' . $html);ます。

Warning: DOMDocument::loadHTML() [domdocument.loadhtml]: Char 0xD860 out of allowed range in Entity, line: 1 in D:\xampp\xampp\htdocs\xampp\similarity\functions.php on line 438
Warning: DOMDocument::loadHTML() [domdocument.loadhtml]: Char 0xDEE2 out of allowed range in Entity, line: 1 in D:\xampp\xampp\htdocs\xampp\similarity\functions.php on line 438
Warning: DOMDocument::loadHTML() [domdocument.loadhtml]: Invalid char in CDATA 0x3 in Entity, line: 1 in D:\xampp\xampp\htdocs\xampp\similarity\functions.php on line 438

PHPを使用してこれらの「無効な」文字をターゲットにして削除するにはどうすればよいですか?

アンドレイ

4

1 に答える 1

1

テストされていませんが、これは機能するはずです:

$buffer = ob_get_clean();
$tidy = new tidy();
$myHTML = $tidy->repairString('<?xml version="1.0" encoding="UTF-8"?>' . $html);

$dom->loadHTML($myHTML);
于 2012-05-09T09:23:01.900 に答える