DomDocument在html文件中遇到锚时会产生异常


DomDocument produces an exception when it encounters an anchor in an html file?

当我加载html文件时,dom找到了一个锚,例如

<a href="http://www.facebook.com/page?utm_source=NSLGARNIER&utm_medium=19082012&utm_campaign=SUNSHINE_MOMENTS" style="color:#ababab;text-decoration:none;">Facebook</a>

它返回给我一个错误

警告:DOMDocument::loadHTMLFile()[DOMDocument.loadHTMLFile]:htmlParseEntityRef:应为";"在文件/emailing_garnier543/emailing_garnier/emailing_garnier.html中,第13行,C:''wamp''www''emailingtool_new_old''process.php,第42行

process.php中的行12由以下行组成

$html = $dom->loadHTMLFile($file);

它似乎不接受?在url中。。我该如何解决这个问题?

您应该添加:

libxml_use_internal_errors(true);

http://codepad.org/eRYubHSA

<?php
$string = '<a href="http://www.facebook.com/page?utm_source=NSLGARNIER&utm_medium=19082012&utm_campaign=SUNSHINE_MOMENTS" style="color:#ababab;text-decoration:none;" >Facebook</a>';
$dom = new DOMDocument();
libxml_use_internal_errors(true);
$dom->loadHTML($string);
var_dump($dom->saveHTML());