将xml元素与变量php进行比较

时间:2012-10-22 22:42:40

标签: php xml simplexml

我正在尝试使用simpleXML将XML中的元素与变量进行比较,但我无法做到正确。这就是我到目前为止所做的:

PHP

  

$ xml = simplexml_load_file('0.xml');

    if((string)$xml->stickers->sticker->id == $id) {  //<-- THIS LINE
        //code to be executed
    }

XML

<stickers>
    <sticker>
        <id>1</id>
        <content>StickerContent</content>
    </sticker>
</stickers>

这给我留下了注意: 试图在我标记的行上获取非对象的属性,我不知道如何解决它。

的var_dump($ XML)

object(SimpleXMLElement)#1 (1) {
  ["sticker"]=>
  array(2) {
    [0]=>
    object(SimpleXMLElement)#2 (5) {
      ["id"]=>
      string(1) "1"
      ["content"]=>
      string(1) "p"
    }
  }
}

1 个答案:

答案 0 :(得分:2)

应该是这样的:

if ((string) $xml->sticker->id == $id)

虽然如果你有多个贴纸元素,那就是:

if ((string) $xml->sticker[0]->id == $id)