2

输入

<root id="root">
<p id="p1"><i>Title</i></p>
<p id="p2"><b id="b1">AAA<sup>1</sup>, BBB<sup>2</sup></b></p>
</root>

PHP代码,

$dom2 = new DomDocument();
$dom2->loadXML( $input );
$e = $dom2->getElementById('p1');
    var_dump($e);

当我运行时, var_dump 显示 NULL... 但是p1在那里,在<p id="p1">.

4

1 回答 1

3

您正在加载一个可能没有定义id属性的 DTD 的 XML 文件。

您或许可以使用 Xpath 来查找这些元素。

$xpath = new DOMXPath($dom2);
$element = $xpath->query("//*[@id='p1']")->item(0);
于 2013-09-30T20:14:44.430 回答