2024 年日本 PHP 研討會

簡介

DOM 擴充允許透過 PHP 的 DOM API 對 XML 和 HTML 文件進行操作。

注意:

DOM 擴充使用 UTF-8 編碼。使用 mb_convert_encoding()UConverter::transcode()iconv() 來處理其他編碼。

新增註解

使用者貢獻的註解 1 則註解

4
captainjester at hotmail dot com
4 年前
使用此方法處理部分 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。
?>
To Top