Home  >  Article  >  Backend Development  >  刚开始碰php,解析xml时碰到有关问题了

刚开始碰php,解析xml时碰到有关问题了

WBOY
WBOYOriginal
2016-06-13 13:00:21882browse

刚开始碰php,解析xml时碰到问题了

本帖最后由 yxxue 于 2012-11-25 18:57:42 编辑 远程XML文档格式如下:
<br />
<?xml version="1.0" encoding="UTF-8" ?> <br />
 <user><br />
  <data errorcode="0" usernum="100626" <br />
username="u1" sex="1" nickname="麦芽糖" <br />
score="0" province="" city="" area="" /> <br />
  </user><br />


我在PHP中这样获取到这个XML:
使用自己写的gethttpdata方法,是为了容错,避免访问远程服务器出错时程序报错。
<br />
$login_interface_url = "http://www.1.com/1.xml";<br />
	$data = gethttpdata($login_interface_url); //获取远程文件内容<br />
	$xml = simplexml_load_string($data);<br />
	$xmldata = var_export($xml,true);<br />
        //如果使用var_dump()就直接输出了,不是我想要的。<br />
<br />


接下来我怎么读取这个xmldata呢?
如何获得中的各个属性的值呢?
------解决方案--------------------
本帖最后由 xuzuning 于 2012-11-25 22:28:58 编辑 默认是 utf-8 的
$string = <<<XML<br />
<?xml version="1.0" encoding="gb2312" ?> <br />
<a><br />
<foo name="Jack" game="lonely">1</foo><br />
<foo name="千斤顶" game="寂寞">1</foo><br />
</a><br />
XML;<br />
<br />
$xml = simplexml_load_string($string);//但也可以接受非 utf-8 声明的xml<br />
foreach($xml->foo as $item) {<br />
  foreach($item->attributes() as $a => $b) {<br />
    echo $a,'="',$b,"\"\n";<br />
  }<br />
}

但结果还是 utf-8 的
name="Jack"
game="lonely"
name="千斤顶"
game="寂寞"
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn