xml中对象转化为数组
2016-10-13 08:51
239 查看
<?php header('content-type:text/html;charset=utf-8'); /* * simplexml的DOM对象处理xml也可已处理html * */ $simple = simplexml_load_file('./index.xml'); /* * simple加载完成之后有数组也有对象 * 下面xml对象转为数组 * 用到的是递归 * */ function toArray($sim) { $arr = (array)$sim; foreach ($arr as $k => $v) { if ($v instanceof SimpleXMLElement || is_array($v)) { $arr[$k] = toArray($v); } } return $arr; } //print_r(toArray($simple));die; /* * 一维数组转换为xml * */ $arr = array('man' => '漫', 'ge' => '哥'); function arrtoXml($arr) { $simplexml = new SimpleXMLElement('<?xml version="1.0" encoding="utf-8"?><root></root>'); foreach ($arr as $k => $v) { $simplexml -> addChild($k, $v); } return $simplexml -> saveXML(); } //echo arrtoxml($arr);die; //header('content-type:text/xml;charset=utf-8'); /* * 多维维数组转为xml对象 * */ $result = array(2,3,3,3,3,'name' => '哥哥', 'title' => '标题', 'age' => 25, 'boos' => array('key' => '键', 'value' => '值', 'array' => array('ma' => '骂你咋了啊'), 'bo' => array(0, 1))); function toarrayXml($result, $node = null) { if ($node === null) { $simplexml = new SimpleXMLElement('<?xml version="1.0" encoding="utf-8"?><root></root>'); } else { $simplexml = $node; } foreach ($result as $k => $v) { if (is_array($v)) { toarrayXml($v, $simplexml -> addChild($k)); } else if (is_numeric($k)) { $simplexml -> addChild('manman' . $k, $v); } else { $simplexml -> addChild($k, $v); } } /* * 直返会输出并不保存 * */ return $simplexml -> saveXML(); } /*header('content-type:text/xml;charset=utf-8'); echo toarrayXml($result);*/ /* 下面是模板 * 打印之前把其他的注释去掉 <?xml version="1.0" encoding="utf-8"?> <bookstore> <book> <title>天龙八部</title> <price>28.8</price> </book> <book> <title>武侠小说</title> <price>29.9</price> </book> </bookstore> * */
相关文章推荐
- java中把对象转化为byte数组的方法
- 将属性的XML解析成对象数组列表
- FLEX 数组 转化成 xml
- Linq To XML把对象数组写入xml
- 使用 PHP 将 XML 转化为易读的数组!
- Java对象与XML文件之间相互转化(含源代码)
- FireFox下XML对象转化成字符串的解决方法
- 如何将PHP的数组转化成对象
- java中把对象转化为byte数组的方法
- xml文件格式的类型转化为Json对象
- 对象与Xml的相互转化
- Flex中利用SimpleXMLEncoder将对象(objects)转化为XML的例子
- Flex中利用SimpleXMLDecoder类将XML转化为对象(objects)
- [VB.Net]获取对象的指针及结构体与字节数组间的相互转化
- 【转】Flex中利用SimpleXMLEncoder将对象(objects)转化为XML
- php实现数组转化成xml的类
- 读书笔记:《亮剑 .Net》——将类转化为XML并保存已经去读后反序列化为类对象
- 将数组转化为XML数据
- 使用 PHP 将 XML 转化为易读的数组!
- 在使用反射中,Object代表一个数组对象,如何转化为数组