请教这样的xml怎样解析出来值呢??急~~~~ //php5支持$xml1 = (array)simplexml_load_file($XMLFileName);var_dump(xml);访问书组就可以了,自己看看是哪个吧 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 $result = file_get_contents("1.xml");$xml_parser = xml_parser_create("ISO-8859-1");xml_parser_set_option($xml_parser,XML_OPTION_CASE_FOLDING,0);xml_parser_set_option($xml_parser,XML_OPTION_SKIP_WHITE,1);xml_parse_into_struct($xml_parser,$result,$values,$tags);xml_parser_free($xml_parser);你可以print_r($tags)和print_r($values),看看。这两个都是结构数组。tags是键,values是对应的键值service_id是service的一个属性。$id = $indexs["service"][0]; //这个是tags对应的键值,就是values对应的键, $service_id = $values[$id]["attributes"]["service_id"];这种做法只对简单的一个标签的,如果是循环标签,就要写循环取值。 http://blog.csdn.net/ezdevelop/archive/2005/06/15/394717.aspx foreach ($indexs as $key=>$val){ if($key == "service"){ $ad = $val; continue; }}可以使用循环取 可是如果数组和数组之间的键值我不知道怎么办呢??譬如service['service']['service_id']我并不知道'service_id'的存在.是动态生成出来的.有可能还有service['service']['good']我怎么才能获得他们的属性值呢?? 还有就是我不知道service['service']['service_id']下面是否还是个数组.譬如:service['service']['good']中的good本身也是个数组.这样子的话我该怎么遍历呢?? 我的意思是xml的atribute是没有规律的.但是能解析出来. 您看一下这样的数组结构怎么遍历出来呢??Array( [nba] => Array ( [team] => Array ( [0] => Array ( [id] => 46 [value] => 皇家马德里 ) [1] => Array ( [id] => 47 [value] => 尤文图斯 ) [2] => Array ( [id] => 51 [name] => wang [value] => 火箭 ) [3] => Array ( [id] => 52 [value] => 沃尔夫斯堡 ) [4] => Array ( [id] => 53 [value] => 巴塞罗那 ) [5] => Array ( [id] => 54 [value] => 太阳 ) [6] => Array ( [id] => 54 [goo] => dddd [value] => 太阳 ) ) [update] => 2005-06-07 [value] => )) mysql timestamp类型能精准毫秒吗 请教个ftp_put的问题 采集内容页面的时候图像路径问题 死活执行不了的函数 开贴讨论PHP数组容量的问题,来者有分! php 页面跳转问题 怎样从"文件上传域"中取得文件的真实路径呢? 关于生成图片的问题! 为什么从属性上看不到文件名啊? 谁能帮忙讲一下cookie和session的作用和使用方法,多谢了 请教一个数学游戏问题???????? Mkdir问题
$xml_parser = xml_parser_create("ISO-8859-1");
xml_parser_set_option($xml_parser,XML_OPTION_CASE_FOLDING,0);
xml_parser_set_option($xml_parser,XML_OPTION_SKIP_WHITE,1);
xml_parse_into_struct($xml_parser,$result,$values,$tags);
xml_parser_free($xml_parser);你可以print_r($tags)和print_r($values),看看。
这两个都是结构数组。tags是键,values是对应的键值service_id是service的一个属性。$id = $indexs["service"][0]; //这个是tags对应的键值,就是values对应的键,
$service_id = $values[$id]["attributes"]["service_id"];这种做法只对简单的一个标签的,如果是循环标签,就要写循环取值。
if($key == "service"){
$ad = $val;
continue;
}
}可以使用循环取
我并不知道'service_id'的存在.是动态生成出来的.有可能还有service['service']['good']
我怎么才能获得他们的属性值呢??
service['service']['good']中的good本身也是个数组.这样子的话我该怎么遍历呢??
Array
(
[nba] => Array
(
[team] => Array
(
[0] => Array
(
[id] => 46
[value] => 皇家马德里
) [1] => Array
(
[id] => 47
[value] => 尤文图斯
) [2] => Array
(
[id] => 51
[name] => wang
[value] => 火箭
) [3] => Array
(
[id] => 52
[value] => 沃尔夫斯堡
) [4] => Array
(
[id] => 53
[value] => 巴塞罗那
) [5] => Array
(
[id] => 54
[value] => 太阳
) [6] => Array
(
[id] => 54
[goo] => dddd
[value] => 太阳
) ) [update] => 2005-06-07
[value] =>
))