使用此方法處理部分 HTML 時要小心。它只接受包含至少一個 HTML 元素和一個 BODY 元素的完整 HTML 文件。如果您正在處理部分 HTML,並在其周圍填寫缺少的元素,且未在 META 元素中指定字元編碼,則它會被視為 ISO-8859-1,並會損壞 UTF-8 字串。範例
<?php
$body = getHtmlBody();
$doc = new DOMDocument();
$doc->loadHtml("<html><body>".$body."</body></html>");
// $doc 會將您的 HTML 視為 ISO-8859-1。
// 這是正確的,但如果您的來源是 UTF-8,則可能不是您想要的結果
?>
<?php
$body = getHtmlBody();
$doc = new DOMDocument();
$doc->loadHtml("<html><head><meta charset=\"UTF-8\"><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"></head><body>".$body."</body></html>");
// $doc 會將您的 HTML 正確地視為 UTF-8。
?>