我有一个xml。我拿走了所有数据,但我需要一些价值。
<stock>
<Ozellik isim="color">Black</Ozellik>
<Ozellik isim="size">Standart Size</Ozellik>
</stock>
我写这段代码
$varozellik[$r] = $Urun->Stoklar->Stok[$i]->Ozellik[$r]
然后转回给我 - 黑色 标准尺寸
但我需要颜色还是尺码?怎么走?
谢谢
答案 0 :(得分:0)
使用xpath
按其Ozellik
属性值选择特定的isim
节点:
$xml = simplexml_load_string($x); // assume XML in $x
$size = $xml->xpath("/stock/Ozellik[@isim='size']")[0];
xpath
表达式将选择
Ozellik
stock
个孩子
isim
属性,其值为&#39; size&#39;。条件位于[]
,@
属于属性。xpath
返回SimpleXml
元素的数组,因此为了获得标量值,我们取消引用数组,并在行尾使用[0]
的第一个值。请注意,这需要PHP&gt; = 5.4。看到它有效:https://eval.in/493083
请注意,上述代码将选择XML中的所有匹配节点,甚至跨多个<stock>
节点。