我如何比较XML上属性的值,只回显包含我想要的字符串的属性?

时间:2017-06-21 10:56:04

标签: php xml simplexml

所以这是关于我的XML如何看起来的一个例子(我使用SimpleXML,我想保持这种方式。)。

<foo>
  <foo1>
    <energy A="false" B="false" C="false" D="true" E="false" F="false"/>
  </foo1>
</foo>

到目前为止,这是我的PHP:

$energyR = $xml->foo->foo1->energy[0]->attributes();
foreach($energy as $key => $ener){
 echo $key, $ener;
}

结果如下:

AfalseBfalseCfalseDtrueEfalseFfalse

现在我想要的是:遍历所有属性并找到哪一个属性为真,并且只保存属性为true的变量。

这意味着结果应为:

D(因为这是值为true的那个)

有什么想法吗?一个完整的新代码也是可以接受的。正如我所提到的,我使用的是SimpleXML,所以只有在SimpleXML上才能得到答案。

1 个答案:

答案 0 :(得分:2)

   foreach($energy as $key => $ener){
        if ($ener == 'true') {
            echo $key;
        }
    }
像这样