PHP如何将XML转成数组

5年以前  |  阅读数:833 次  |  编程语言: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)

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

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例