我有一个xml文件,我需要使用xpath选择孙子或孙子的孩子。
这是xml文件链接 - XML file 我用这段代码做到了:
<?php
$dom = new DOMDocument();
$dom->validateOnParse = TRUE;
$dom->load('file.xml')
$xpath = new DomXPath($dom);
$nodes = $xpath->query('//question[@id = "1"]/answer[@id = "1"]/subquestion[@id = "1-1"]/answer[@id = "1-1"]');
?>
上面的代码工作正常但我需要缩短查询,因为我不知道子代理部门。
谢谢
答案 0 :(得分:1)
您可以在查询中的任何位置使用//,所以
//question[@id = "1"]//subquestion[@id = "1-1"]/answer[@id = "1-1"]
可以在您之后的任何级别找到它。
您可以随时使用https://www.freeformatter.com/xpath-tester.html之类的内容来播放这些内容,以便您测试表达式。