PHP将XML转数组过程详解

 更新时间:2013年11月13日 11:06:40   作者:  
本文讲的是用PHP将XML对象转换成数组的方法

得到一个xml型的对象:

复制代码 代码如下:

$resp = $this->c->execute($req, $sessionKey);//获得xml对象
$items=$resp->items;

那么读取对象的值,就用$items->item,或者$items->item->price,如此操作很不方便,不符合php操作数组的习惯。

php提供了array方法将对象转换成数组,只要把你要转换数组的对象前面加上(array)就行了。

比如将$items->item(有很多item的对象)转换成数组:

复制代码 代码如下:

foreach ($items->item as $item){
         $goods[]=(array)$item;
}

$goods就是一个php数组了。
转换前:
复制代码 代码如下:

SimpleXMLElement Object
(
    [cid] => 50003793
    [modified] => 2013-04-18 17:16:25
    [nick] => qq307819623
    [price] => 200.00
    [title] => Nokia N97全新行货
)
SimpleXMLElement Object
(
    [cid] => 50024921
    [modified] => 2013-04-18 16:58:06
    [nick] => qq307819623
    [pic_url] =>pic.jpg
    [price] => 888888.00
    [title] => 刘俊仲
)
SimpleXMLElement Object
(
    [cid] => 1512
    [modified] => 2013-04-18 16:56:46
    [nick] => qq307819623
    [pic_url] => item_pic.jpg
    [price] => 323232.00
    [title] => 二手你好
)
SimpleXMLElement Object
(
    [cid] => 50012166
    [modified] => 2013-04-18 15:10:07
    [nick] => qq307819623
    [pic_url] =>0-item_pic.jpg
    [price] => 32.00
    [title] => 放大率拉德斯基分拉沙德疯了似的看法拉斯法
)

转换后:
复制代码 代码如下:

Array
(
    [0] => Array
        (
            [cid] => 50003793
            [modified] => 2013-04-18 17:16:25
            [nick] => qq307819623
            [price] => 200.00
            [title] => Nokia N97全新行货
        )

    [1] => Array
        (
            [cid] => 50024921
            [modified] => 2013-04-18 16:58:06
            [nick] => qq307819623
            [pic_url] => pic.jpg
            [price] => 888888.00
            [title] => 刘俊仲
        )

    [2] => Array
        (
            [cid] => 1512
            [modified] => 2013-04-18 16:56:46
            [nick] => qq307819623
            [pic_url] =>item_pic.jpg
            [price] => 323232.00
            [title] => 二手你好
        )

    [3] => Array
        (
            [cid] => 50012166
            [modified] => 2013-04-18 15:10:07
            [nick] => qq307819623
            [pic_url] => 0-item_pic.jpg
            [price] => 32.00
            [title] => 放大率拉德斯基分拉沙德疯了似的看法拉斯法
        )

相关文章

  • destoon实现不同会员组公司名称显示不同的颜色的方法

    destoon实现不同会员组公司名称显示不同的颜色的方法

    这篇文章主要介绍了destoon实现不同会员组公司名称显示不同的颜色的方法,是非常实用的方法,代码简洁思路简单,需要的朋友可以参考下
    2014-08-08
  • thinkphp中session和cookie无效的解决方法

    thinkphp中session和cookie无效的解决方法

    这篇文章主要介绍了thinkphp中session和cookie无效的解决方法,涉及针对BOM头的分析与删除方法,具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-12-12
  • PHP模板引擎Smarty中变量的使用方法示例

    PHP模板引擎Smarty中变量的使用方法示例

    这篇文章主要介绍了PHP模板引擎Smarty中变量的使用方法,详细讲述了Smarty模板的原理,下载,配置方法与变量的使用技巧,需要的朋友可以参考下
    2016-04-04
  • thinkphp3.2.0 setInc方法 源码全面解析

    thinkphp3.2.0 setInc方法 源码全面解析

    下面小编就为大家分享一篇thinkphp3.2.0 setInc方法 源码全面解析,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • 详解PHP中cookie和session的区别及cookie和session用法小结

    详解PHP中cookie和session的区别及cookie和session用法小结

    这篇文章主要介绍了PHP中cookie和session的区别及cookie和session用法小结的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下
    2016-06-06
  • Laravel重定向,a链接跳转,控制器跳转示例

    Laravel重定向,a链接跳转,控制器跳转示例

    今天小编就为大家分享一篇Laravel重定向,a链接跳转,控制器跳转示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • php的mkdir()函数创建文件夹比较安全的权限设置方法

    php的mkdir()函数创建文件夹比较安全的权限设置方法

    这篇文章主要介绍了php的mkdir()函数创建文件夹比较安全的权限设置方法,遇到的情况是系统umask影响了mkdir的指定权限参数比期望要小,使用chmod函数则没有这个问题,需要的朋友可以参考下
    2014-07-07
  • php计算多个集合的笛卡尔积实例详解

    php计算多个集合的笛卡尔积实例详解

    笛卡尔积又叫笛卡尔乘积,是一个叫笛卡尔的人提出来的。 简单的说就是两个集合相乘的结果。具体的定义要看看有关代数系的书的定义。这篇文章主要给大家介绍了利用php计算多个集合的笛卡尔积的方法实例,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-02-02
  • HTTP中header头部信息详解

    HTTP中header头部信息详解

    这篇文章主要介绍了HTTP中header头部信息详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • php实现简单爬虫的开发

    php实现简单爬虫的开发

    本文给大家分享的是如何使用php开发简单的网页爬虫的思路以及代码,非常的简单,有需要的小伙伴可以参考下
    2016-03-03

最新评论