好的,所以我在PHP中坚持使用这个xml。考虑到我在我的整个生命中一直使用XML的前3个小时,我已经相当远了。
我无法从名称中包含@的XML内容中提取数据。见下文(显然我不会发布整个XML的东西,但你可以看到我是如何到达那里的。
SimpleXMLElement Object
(
[@attributes] => Array
(
[date] => 2010-09
[reserved] => 6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30
)
)
我是如何到达那里的:
echo $this->General_functions->naked($xml->property[0]->availability->month[0]);
General_functions-> naked只是围绕给定属性包装和print_r的快速函数。
我的问题是,我如何获得@attributes内部的值因为无论我尝试什么我都无法弄明白。我在网上搜索了45分钟没有真正的答案。
提前致谢。 大卫
答案 0 :(得分:4)
您需要使用attributes()
方法将结果作为另一个类。因此,例如,要获取date
属性:
$myElement->attributes()->date
另请注意,它不是字符串,而是SimpleXML属性。如果您想获得其实际值,则需要明确地将其强制转换为string
:
(string)$myElement->attributes()->date
答案 1 :(得分:1)
访问元素的属性,就像访问数组元素一样:
(string) $xml->property[0]->availability->month[0]['date']
编辑添加演员。