php下将XML转换为数组

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

// Xml 转 数组, 包括根键
function xml_to_array( $xml )
{
$reg = "/<(\w+)[^>]*>([\\x00-\\xFF]*)<\\/\\1>/";
if(preg_match_all($reg, $xml, $matches))
{
$count = count($matches[0]);
for($i = 0; $i < $count; $i++)
{
$subxml= $matches[2][$i];
$key = $matches[1][$i];
if(preg_match( $reg, $subxml ))
{
$arr[$key] = xml_to_array( $subxml );
}else{
$arr[$key] = $subxml;
}
}
}
return $arr;
}
// Xml 转 数组, 不包括根键
function xmltoarray( $xml )
{
$arr = xml_to_array($xml);
$key = array_keys($arr);
return $arr[$key[0]];
}

相关文章

Php获取金书网的书名的实现代码

复制代码 代码如下:<?php $url="http://www.golden-book.com/booksinfo/12/264.html"; $lines_array = fi...

PHP使用正则表达式实现过滤非法字符串功能示例

PHP使用正则表达式实现过滤非法字符串功能示例

本文实例讲述了PHP使用正则表达式实现过滤非法字符串功能。分享给大家供大家参考,具体如下: 一、代码 1、index.php <!DOCTYPE html PUBLIC "-/...

Discuz! Passport 通行证整合

Discuz! Passport 通行证整合

解决办法: 第一步: 到dz的数据库表cdb_settings 找到下面这几行修改为 第二步: 删除dz安装目录/forumdata/cache/cache_settings.php第三...

360通用php防护代码(使用操作详解)

360发布通用php防护代码,其实最初是协助phpcms来防护安全用的,现在看来可以加入到任何有漏洞的网站里面,拿phpcmsv9问题,解决方案如下,其他网站以此类推! 1.将360_s...

PHP+Redis开发的书签案例实战详解

PHP+Redis开发的书签案例实战详解

本文实例讲述了PHP+Redis开发的书签案例。分享给大家供大家参考,具体如下: redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更...