<?xml version="1.0" encoding="utf-8"?>
<user>
<person_siteurl>http://www.163.com</person_siteurl>
<job_keys>PHP</job_keys>
<job_keys>JAVA</job_keys>
<job_keys>PYTHON</job_keys>
<email>[email protected]</email>
</user>以上是XML,怎么将里面的数据提取出来,结果如下:$arr = array(
'person_siteurl'=>'http://www.163.com',
'job_keys'=>'php,java,python',
'email'=>'[email protected]'
)谢谢~~
解决方案 »
- linux下如何安装与配置PHP
- 好像大公司,大系统,很少用php
- 去掉相关数组中的重复记录
- PHP能不能调用COM+?怎么调用?ASP呢?
- flash 中有没有对地址 urlencode的函数 急急
- ■■PHP问题,我有一个字符串"2005-10-19",表示日期,如何得到它的下一天?要求结果也是字符串"2005-10-20"
- 请教一个PHP调用问题
- 统计一个页面被访问过的时间
- php4.23下写的画图程序(gd 1.6.2)是不是不能在php4.34(gd 2.0)下使用呀?
- 如何用PHP随机产生由0-9,a-z所组成的长度为4的字符串?
- 用什么方法判断提交是否为URL,最好别用正则
- php现在都是如何保护版权加密的?
<?php
$s='<?xml version="1.0" encoding="utf-8"?>
<user>
<person_siteurl>http://www.163.com</person_siteurl>
<job_keys>PHP</job_keys>
<job_keys>JAVA</job_keys>
<job_keys>PYTHON</job_keys>
<email>[email protected]</email>
</user>';
$result = xml_to_array($s);
var_dump($result);
function xml_to_array($xml)
{
$array = (array)(simplexml_load_string($xml));
foreach ($array as $key=>$item){
$array[$key] = struct_to_array((array)$item);
}
return $array;
}
function struct_to_array($item) {
if(!is_string($item)) {
$item = struct_to_array($val);
}
return $item;
}
http://topic.csdn.net/u/20080616/20/bab806e7-c5df-45d8-b289-863304c849c6.html
出现错误
foreach($xml->children() as $k=>$v){
if(!$ar[$k]) $ar[$k]=(string)$v;
else $ar[$k].=','.$v;
}
print_r($ar);
$res=array_map(function($param){return is_array($param)?implode(',',$param):$param;},$arr);
print_r($res);