php实现xml与json之间的相互转换功能实例
程序员文章站
2022-03-31 15:27:32
...
本文实例讲述了php实现xml与json之间的相互转换功能。分享给大家供大家参考,具体如下:
用php实现xml与json之间的相互转换:
相关函数请查看php手册。
一、参考xml如下
<?xml version="1.0" encoding="UTF-8"?> <humans> <zhangying> <name>张三</name> <sex>男</sex> <old>26</old> </zhangying> <tank> <name>tank</name> <sex> <hao>yes</hao> <aaaa>no</aaaa> </sex> <old>26</old> </tank> </humans>
二、xml转换成json
利用simplexml
public function xml_to_json($source) { if(is_file($source)){ //传的是文件,还是xml的string的判断 $xml_array=simplexml_load_file($source); }else{ $xml_array=simplexml_load_string($source); } $json = json_encode($xml_array); //php5,以及以上,如果是更早版本,请查看JSON.php return $json; }
三、json转换成xml
利用递归函数
public function json_to_xml($source,$charset='utf8') { if(empty($source)){ return false; } //php5,以及以上,如果是更早版本,请查看JSON.php $array = json_decode($source); $xml =''; $xml .= $this->change($array); return $xml; } public function change($source) { $string=""; foreach($source as $k=>$v){ $string .="<".$k.">"; //判断是否是数组,或者,对像 if(is_array($v) || is_object($v)){ //是数组或者对像就的递归调用 $string .= $this->change($v); }else{ //取得标签数据 $string .=$v; } $string .=""; } return $string; }
上面的方法json_to_xml,可以支持<name>aaaa</name>,不支持<name type='test'>aaaaa</name>看代码就能看明白.
更多php实现xml与json之间的相互转换功能实例相关文章请关注PHP中文网!
上一篇: 用在PHP里的JS打印函数_PHP
下一篇: bboss redis组件使用实例
推荐阅读
-
C#实现XML与实体类之间相互转换的方法(序列化与反序列化)
-
php中实现xml与mysql数据相互转换的方法
-
PHP实现的数组和XML文件相互转换功能示例
-
java实现Xml与json之间的相互转换操作示例
-
php中实现xml与mysql数据相互转换的方法
-
php中实现xml与mysql数据相互转换的方法_PHP
-
速战速决 6 - PHP: 获取 http 请求数据, 获取 get 数据 和 post 数据, json 字符串与对象之间的相互转换
-
php中实现xml与mysql数据相互转换的方法_PHP
-
C#实现XML与实体类之间相互转换的方法(序列化与反序列化)
-
php中实现xml与mysql数据相互转换的方法