当前位置:首页 > 开发素材 > 正文内容

php simpleXMLElement与array的相互转换

admin9年前 (2017-02-13)开发素材1716
<?php  
function xmlToArray($simpleXmlElement){  
    $simpleXmlElement=(array)$simpleXmlElement;  
    foreach($simpleXmlElement as $k=>$v){  
        if($v instanceof SimpleXMLElement ||is_array($v)){  
            $simpleXmlElement[$k]=xmlToArray($v);  
        }  
    }  
    return $simpleXmlElement;  
}  
$simxml=simplexml_load_file('./01.xml');  
//print_r(xmlToArray($simxml));  
/* 
 * 数组转化xml   
 * parame 数组 
 * $node  nodename 默认加在根节点 
 */  
function ArrayToxML($arr,$node='root'){  
    if($node=='root'){  
        $simpleXmlElemnet=new SimpleXMLElement('<?xml version="1.0" encoding="utf-8"?><root></root>');  
    }else{  
        $simpleXmlElemnet=$node;  
    }  
    foreach($arr as $k=>$v){  
        if(is_array($v)){  
            ArrayToxML($v,$simpleXmlElemnet->addChild($k));//创建节点 并加在他的后面  
        }else{  
            if(is_numeric($k)){  
                $simpleXmlElemnet->addChild('item',$v);  
            }else{  
                $simpleXmlElemnet->addChild($k,$v);  
            }  
        }  
    }  
    return $simpleXmlElemnet;  
}  
$arr=array('人'=>'人民好','age'=>26,  
        'job'=>array('title'=>'经理','salary'=>44444,  
                'team'=>array('小红','小狗','小张')));  
$xmlElement=ArrayToxML($arr);  
header('Content-Type:text/xml');  
echo $xmlElement->saveXML();  
?>  

顶
0
踩
0
 
 
上一篇为自己的网站制作一个rss API接口
下一篇php+socket模拟get,post请求
参考知识库


分享到:

扫描二维码推送至手机访问。

版权声明:本文由云河空间发布,如需转载请注明出处。

本文链接:http://yuyunhe.cn/index.php/post/225.html

分享给朋友:

“php simpleXMLElement与array的相互转换” 的相关文章

H-ui css 命名规范

 1. 内容优先,表现为辅   2. css命名中英文对照   current 当前     hover 悬停    ...

H-ui html命名规范

 default/index.html    首页   list.html             ...

H-ui 文件夹命名规范

admin     后台管理   app       应用   article   资讯  &...

ThinkPHP二级联动开发demo下载

ThinkPHP二级联动开发demo下载

ThinkPHP二级联动.zip...

Eclipse的Aptana studio插件安装

Eclipse安装Aptana插件【在线安装】1. 在线安装:Help->Install New Software...->Add...->Name: "Aptana", Location: http:...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。