Xpath:在Xpath字符串中使用变量

时间:2014-06-26 02:16:12

标签: php xml xpath

我是Xpath的新手很抱歉,如果这是一个愚蠢的问题,但它一直让我疯狂。我有一个xml文件,如下所示:

<ItemList>
<Item ID="01">
    <Color>Red</Color>
    <Type>Box</Type>
    <Material>Metal</Material>
</Item>
<Item ID="02">
    <Color>Blue</Color>
    <Type>Cone</Type>
    <Material>Wood</Material>
</Item> 
</ItemList>

当我运行以下内容时,我收到错误“注意:尝试获取非对象的属性”

$id = $_GET['code'];

$doc = new DomDocument;
$doc->validateOnParse = true;
$doc->Load('file.xml');

$xpath = new DOMXpath($doc);

$Color = $xpath->query("//ItemList/Item[@ID='" . $id . "']/Color");

echo $Color->item(0)->nodeValue;

据我所知,我试图插入变量的语法错误。我也试过'“+ $ id +”'但得到同样的错误。任何帮助将不胜感激。

0 个答案:

没有答案