我有一个非常简单的XML文件,我想根据URL参数进行解析。到目前为止,我正在使用带有$projid = $_GET["id"];
的PHP来获取ID参数,但是以有意义的方式使用它只显示具有该ID的特定匹配XML记录是我的意思。
这是我的示例XML文件:
<?xml version="1.0" encoding="ISO-8859-1"?>
<projects>
<project id="1">
<id>1</id>
<name>First project</name>
<description>This is the description of the project</description>
</project>
<project id="2">
<id>2</id>
<name>Second project</name>
<description>This is the description of the project</description>
</project>
</projects>
到目前为止,我不确定是否可以使用属性ID或实际的子<id></id>
字段访问特定的项目记录。无论哪个最简单,更清洁,我都愿意接受。
简而言之:通过访问url.com/projects.php?id=1,该页面将显示XML文件中项目1的内容。任何帮助都会很棒。
答案 0 :(得分:1)
一个简单的XPath查询将完成这项工作:
$id = $_GET["id"];
$xmldoc = new DOMDocument();
$xmldoc->load('yourfile.xml');
$xpath = new Domxpath($xmldoc);
$queryResult = $xpath->query('//projects/project[@id = "$id"]');
foreach($queryResult as $result){
echo $result->textContent;
}