DomDocument getElementById不起作用? [英] DomDocument getElementById not works?

查看:83
本文介绍了DomDocument getElementById不起作用?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

输入

<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>

When I run, var_dump shows NULL... But p1 is there, at <p id="p1">.

推荐答案

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

You're loading an XML file which probably doesn't have a DTD which defines id attributes.

$xpath = new DOMXPath($dom2);
$element = $xpath->query("//*[@id='p1']")->item(0);

这篇关于DomDocument getElementById不起作用?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆