2024年PHP开发者大会日本站

简介

DOM扩展允许通过PHP的DOM API对XML和HTML文档进行操作。

注意:

DOM扩展使用UTF-8编码。使用mb_convert_encoding()UConverter::transcode()iconv()处理其他编码。

添加注释

用户贡献注释 1 条注释

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