PHP如何将XML转成数组

前端技术 2023/09/08 PHP

如果你使用 curl 获取的 xml data
xml=simplexmlloadstring(data);
data[′tk′]=jsondecode(jsonencode(xml),TRUE);
如果是直接获取 URL 数据的话
xml=simplexmlloadfile(data);
data[′tk′]=jsondecode(jsonencode(xml),TRUE);

先把 simplexml 对象转换成 json,再将 json 转换成数组。

代码:

<?php
$string = <<<XML
<?xml version=\'1.0\'?> 
<document>
 <title>Forty What?</title>
 <from>Joe</from>
 <to>Jane</to>
 <body>
 I know that\'s the answer -- but what\'s the question?
 </body>
</document>
XML;

$xml=simplexml_load_string($string);
$data = json_decode(json_encode($xml),TRUE);
var_dump( $xml );
var_dump( $data );
object(SimpleXMLElement)[1]
 public \'title\' => string \'Forty What?\' (length=11)
 public \'from\' => string \'Joe\' (length=3)
 public \'to\' => string \'Jane\' (length=4)
 public \'body\' => string \'
 I know that\'s the answer -- but what\'s the question?
 \' (length=57)
array
 \'title\' => string \'Forty What?\' (length=11)
 \'from\' => string \'Joe\' (length=3)
 \'to\' => string \'Jane\' (length=4)
 \'body\' => string \'
 I know that\'s the answer -- but what\'s the question?
 \' (length=57)

以上就是本文的全部内容,希望对大家的学习有所帮助。

本文地址:https://www.stayed.cn/item/22434

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。