php如何将xml对象转换为数组

该文章由 leevare 发布于 ,归类于 PHP
function simplexml_obj2array($obj) {
    if (count($obj) >= 1) {
        $result = $keys = array();
        foreach ($obj as $key => $value) {
            isset($keys[$key]) ? $keys[$key] += 1 : $keys[$key] = 1;
            if ($keys[$key] == 1) {
                $result[$key] = simplexml_obj2array($value);
            } else if ($keys[$key] == 2) {
                $result[$key] = array($result[$key], simplexml_obj2array($value));
            } else if ($keys[$key] > 2) {
                $result[$key][] = simplexml_obj2array($value);
            }
        }
        return $result;
    } else if (count($obj) == 0) {
        return (string)$obj;
    }
}

echo '<pre>';
print_r(simplexml_obj2array($xml));
echo '</pre>';

使用simplexml_load_file可以很容易得到一个xml对象,但是对于php,人们一般习惯于操作数组,使用上述的函数即可将一个xml对象转换为数组的形式。

如果觉得我的文章对您有用,请您随意打赏。您的支持将鼓励我更加努力创作!

相关文章:

说点什么

avatar
300
  Subscribe  
提醒