PHP将XML转数组过程详解


Posted in PHP onNovember 13, 2013

得到一个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] => 放大率拉德斯基分拉沙德疯了似的看法拉斯法
        )
PHP 相关文章推荐
玩转图像函数库―常见图形操作
Sep 03 PHP
PHP的宝库目录--PEAR
Oct 09 PHP
谈谈新手如何学习PHP 默默经典版本
Aug 04 PHP
php smarty 二级分类代码和模版循环例子
Jun 01 PHP
PHP模板引擎Smarty的缓存使用总结
Apr 24 PHP
用 Composer构建自己的 PHP 框架之设计 MVC
Oct 30 PHP
php jsonp单引号转义
Nov 23 PHP
PHP获取当前日期和时间及格式化方法参数
May 11 PHP
php基本函数汇总
Jul 09 PHP
PHP控制反转(IOC)和依赖注入(DI)
Mar 13 PHP
关于 Laravel Redis 多个进程同时取队列问题详解
Dec 25 PHP
php面试中关于面向对象的相关问题
Feb 13 PHP
PHP生成sitemap.xml地图函数
Nov 13 #PHP
使用PHP静态变量当缓存的方法
Nov 13 #PHP
使用phpQuery采集网页的方法
Nov 13 #PHP
phpQuery占用内存过多的处理方法
Nov 13 #PHP
PHP反射类ReflectionClass和ReflectionObject的使用方法
Nov 13 #PHP
php堆排序(heapsort)练习
Nov 13 #PHP
php生成EAN_13标准条形码实例
Nov 13 #PHP
You might like
php session_start()关于Cannot send session cache limiter - headers already sent错误解决方法
2009/11/27 PHP
php 高性能书写
2010/12/11 PHP
PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
2012/12/07 PHP
php中switch与ifelse的效率区别及适用情况分析
2015/02/12 PHP
PHP的mysqli_rollback()函数讲解
2019/01/23 PHP
根据分辨率不同,调用不同的css文件
2006/07/07 Javascript
JavaScript isPrototypeOf和hasOwnProperty使用区别
2010/03/04 Javascript
jquery 添加节点的几种方法介绍
2013/09/04 Javascript
让新消息在网页标题闪烁提示的jQuery代码
2013/11/04 Javascript
jQuery之过滤元素操作小结
2013/11/30 Javascript
利用纯Vue.js构建Bootstrap组件
2016/11/03 Javascript
详解JS: reduce方法实现 webpack多文件入口
2017/02/14 Javascript
Ionic2调用本地SQlite实例
2017/04/22 Javascript
MvcPager分页控件 适用于Bootstrap
2017/06/03 Javascript
jQuery复合事件用法示例
2017/06/10 jQuery
vue元素实现动画过渡效果
2017/07/01 Javascript
JS通用方法触发点击事件代码实例
2020/02/17 Javascript
Bootstrap实现前端登录页面带验证码功能完整示例
2020/03/26 Javascript
python 合并文件的具体实例
2013/08/08 Python
Python读写Redis数据库操作示例
2014/03/18 Python
python求pi的方法
2014/10/08 Python
python 读写中文json的实例详解
2017/10/29 Python
python 获取等间隔的数组实例
2019/07/04 Python
使用Python爬取小姐姐图片(beautifulsoup法)
2021/02/11 Python
美国派对用品及装饰品网上商店:Shindigz
2016/07/30 全球购物
英国领先的新鲜松露和最好的松露产品供应商:TruffleHunter
2019/08/26 全球购物
Talbots官网:美国成熟女装品牌
2019/11/15 全球购物
文明学生事迹材料
2014/01/29 职场文书
电子商务个人职业生涯规划范文
2014/02/12 职场文书
宣传活动总结范文
2014/07/01 职场文书
2014年中秋寄语
2014/08/11 职场文书
党建工作整改措施
2014/10/28 职场文书
2015年幼儿园卫生保健工作总结
2015/05/12 职场文书
退税申请报告怎么写
2015/05/18 职场文书
节约用水广告语60条
2019/11/14 职场文书
详解Go语言中Get/Post请求测试
2022/06/01 Golang