【问题标题】:PHP DOMDocument object has null documentElement for valid XMLPHP DOMDocument 对象对于有效的 XML 有 null documentElement
【发布时间】:2017-10-30 13:13:51
【问题描述】:

我正在使用的 XML 实际上是位于 http://www.gjc.org/cgi-bin/rssjobs.pl 的 RSS 提要

它似乎通过 W3C RSS Feed 和 XML 验证器进行验证。当我执行以下操作时,我只会得到null

$dom = new DOMDocument($xml);
$dom->loadXML($xml);
var_dump($dom->documentElement);

我是否遗漏了一些明显的东西?也许是编码问题?任何见解将不胜感激。

【问题讨论】:

  • DOMDoc 是什么类是DOMDocument。是错字还是一些自定义库?
  • 因为 DOMDocument 它可以工作 eval.in/889459
  • 啊哈,我终于得到它来给我一个实际的错误! “警告:DOMDocument::loadXML():输入不正确的UTF-8,表示编码!字节:实体中的0x96 0x20 0x47 0x49,行:“中的257”

标签: php xml rss domdocument


【解决方案1】:

您需要转换编码才能使其正常工作,请尝试以下操作:

$xml = file_get_contents("http://www.gjc.org/cgi-bin/rssjobs.pl");
$xml = mb_convert_encoding($xml, 'HTML-ENTITIES', "UTF-8");

$dom = new DOMDocument($xml);
$dom->loadXML($xml);
var_dump($dom->documentElement);

这将相应地转换字符。

【讨论】:

    猜你喜欢
    • 2020-07-27
    • 1970-01-01
    • 2010-10-15
    • 2013-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-07
    • 1970-01-01
    相关资源
    最近更新 更多