PHP 解析xml字符串到数组

function parseXml($dom){
         $data=[];
        $nodeName=$dom->nodeName;        
        if($dom->hasAttributes()){
            $atts=$dom->attributes;
            for($i=0;$i<$atts->length;$i++){
                $att=$atts->item($i);
                $data[$att->nodeName]=$att->nodeValue;
            }
        }        
        if($dom->childNodes->length>1){
            $nodes=$dom->childNodes;            
            for($i=1;$i<$nodes->length;$i++){
                $childNode=$nodes->item($i);
                if(in_array($childNode->nodeType,[3,8]))continue;                
                if($childNode->childNodes->length>1){                   
                    $data[$childNode->nodeName]=parseXml($childNode);                    
                }else{
                    $data[$childNode->nodeName]=$childNode->nodeValue;
                }
             }
        }else{
            $data[$nodeName]=$dom->nodeValue;
            
        }
        return $data;
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值