1

URL パラメーターに基づいて解析したい非常に単純な XML ファイルがあります。これまでのところ、私は PHP で ID パラメーターを取得していますが$projid = $_GET["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 のコンテンツがページに表示されます。どんな助けも素晴らしいでしょう。

4

1 に答える 1

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;
}
于 2012-10-29T18:29:49.813 に答える