我在simplexml元素上有一个xpath查询,如下所示:
$theSimpleXmlObject->xpath('//path/to/*/node');
它返回一个结果数组很好,但它是一个simplexml对象数组,我只想要一个平面数组。
这可能吗?
理想情况下,我会返回一个带有匹配节点值的简单数组,而不必迭代结果来准备数组。
答案 0 :(得分:0)
尝试以这种方式获取数组
$xml = json_decode(json_encode((array) simplexml_load_string($string)), 1);
当你将xml转换为数组时,它只会转换为“第一级”,因此我们可以通过在JavaScript Object Notation中转换它并将其再次解码为数组来实现。序列化无济于事,因为它保持数据结构。