当simpleXML不精确时,可以使用PHP的内置函数json_encode()
和json_decode()
来将XML转换为PHP数组。
首先,使用simplexml_load_string()
函数将XML字符串加载为SimpleXMLElement对象。然后,将SimpleXMLElement对象转换为JSON字符串,使用json_encode()
函数。最后,使用json_decode()
函数将JSON字符串转换为PHP数组。
以下是示例代码:
$xmlString = '<root>
<person>
<name>John Doe</name>
<age>30</age>
</person>
<person>
<name>Jane Smith</name>
<age>25</age>
</person>
</root>';
$xml = simplexml_load_string($xmlString);
$json = json_encode($xml);
$array = json_decode($json, true);
print_r($array);
输出结果为:
Array
(
[person] => Array
(
[0] => Array
(
[name] => John Doe
[age] => 30
)
[1] => Array
(
[name] => Jane Smith
[age] => 25
)
)
)
这样,XML就被成功转换为了PHP数组。
简单解释一下上述代码的步骤:
simplexml_load_string()
函数将XML字符串加载为SimpleXMLElement对象。json_encode()
函数将SimpleXMLElement对象转换为JSON字符串。json_decode()
函数将JSON字符串转换为PHP数组。这种方法的优势是简单易用,适用于简单的XML结构。它可以将XML数据转换为PHP数组,方便进行后续的数据处理和操作。
推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云云数据库MySQL。
领取专属 10元无门槛券
手把手带您无忧上云