4
我注意到使用PHP的DOMDocument
的saveXML()
和saveHTML()
方法時存在不同的「傾銷」行爲。這是一個傾銷版權符號的簡單示例(©)。轉儲非ASCII字符時DOMDocument的不一致行爲的解釋是什麼?
<?
$domDoc = new DOMDocument();
$domDoc->loadHTML("©");
echo $domDoc->saveHTML();
echo $domDoc->saveXML();
echo $domDoc->saveXML($domDoc);
?>
三個轉儲產生三種不同的輸出:
第一輸出串©
第二輸出字符實體©
第三輸出用於版權符號的UTF8 2字節代碼(U+00A9
)
爲什麼不同的輸出?有沒有一種方法來預測控制使用哪種方法?
由於您的問題的主要領域是PHP,您可能會考慮將其重新標記爲(並放棄其中一個其他標記) – 2010-01-04 19:59:03
遵循您的建議。謝謝。 – Sleepster 2010-01-06 12:15:44
+1我也想知道爲什麼使用'loadHtml()','loadXml()','saveHtml()','saveXml()'這些不一致。也許這些錯誤在libxml中? – 2010-11-20 16:58:10