PHP将XML转为数组的方法

本文详细介绍了,在php编程中,将XML数据转换为数组的详细过程,剖析了xml转为php数组的具体方法,感兴趣的朋友可以参考学习下。

PHP将XML转为数组的方法

  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的.对象)转换成数组:

复制代码 代码示例:

<?php

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] => 放大率拉德斯基分拉沙德疯了似的看法拉斯法

)