0
我有一个元素的id属性值。帮助使用XPath选择
我只需要选择其子女(不是所有的后代)。
我用
$childElements = $xml->xpath('//entity[@id=212323]');
print_r($childElements);
但会选择所有后代并打印出来。我只想选择1代的孩子。我怎么能这样做?
<entity id=212323>
<this>asd</this>
<this>asd</this>
<this>asd</this>
<this>
<notThis>asd</notThis>
<notThis>asd</notThis>
<notThis>asd</notThis>
</this>
</entity>
(导致层次是很长,所以fecthing所有后代将减缓过程下来,它不是智能抓取不必要的数据)。
位在黑暗中刺,但是这可能我朝着正确的方向迈出的一步:'//实体[@ ID = 212323] /儿童:: * /文()'或'也许//实体[@ id = 212323]/child :: */child :: text()' – 2010-03-18 01:53:14
不,它仍然提取id元素下的每个元素。 – 2010-03-18 01:55:47
我想你是误会。当你打印一个元素时,你打印它的所有子元素,对吧?即使您只选择顶级儿童,如果您打印它们......您也可以打印所有内容。你需要重新考虑你的要求。 – Cheeso 2010-03-18 03:50:55