PHP XML转数组,对象转数组

Posted 何效名的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP XML转数组,对象转数组相关的知识,希望对你有一定的参考价值。


$xml = 
<<<XML
    <测试XML>
        <测试XML>测试XML</测试XML>
        <测试XML>测试XML</测试XML>
        <测试XML>
            <测试XML>测试XML</测试XML>
            <测试XML>测试XML</测试XML>
        </测试XML>
    </测试XML>
XML;

$obj = new stdClass();
$obj -> 测试对象1 = ‘测试对象‘;
$obj -> 测试对象2 = new stdClass();
$obj -> 测试对象2 -> 测试对象1 = ‘测试对象‘;
$obj -> 测试对象2 -> 测试对象2 = new stdClass();
$obj -> 测试对象2 -> 测试对象2 -> 测试对象1 = ‘测试对象‘;
$obj -> 测试对象2 -> 测试对象2 -> 测试对象2 = ‘测试对象‘;

function xmsb_xml2arr($xml)
{
    $obj = simplexml_load_string($xml);
    $arr[$obj -> getName()] = xmsb_obj2arr($obj);
    
    return $arr;
}

function xmsb_obj2arr($obj)
{
    $arr = (array) $obj;
    
    foreach($arr as &$child)
    {
        if(is_array($child))
        {
            foreach($child as &$childs)
            {
                if(is_object($childs))
                {
                    $childs = xmsb_obj2arr($childs);
                }
            }
        }
        else if(is_object($child))
        {
            $child = xmsb_obj2arr($child);
        }
    }
    
    return $arr;
}

// xml转数组
var_dump(xmsb_xml2arr($xml));
// 对象转数组
var_dump(xmsb_obj2arr($obj));

 

以上是关于PHP XML转数组,对象转数组的主要内容,如果未能解决你的问题,请参考以下文章

php数组转xml

PHP数组转对象,对象转数组

php xml 和json转成Array(数组)格式和数组转成xml和json

php xml 和json转成Array(数组)格式和数组转成xml和json

php xml 和json转成Array(数组)格式和数组转成xml和json

php 怎么将数组转xml的函数