首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

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

2013-01-01 
刚开始碰php,解析xml时碰到问题了本帖最后由 yxxue 于 2012-11-25 18:57:42 编辑远程XML文档格式如下:?xm

刚开始碰php,解析xml时碰到问题了
本帖最后由 yxxue 于 2012-11-25 18:57:42 编辑 远程XML文档格式如下:


<?xml version="1.0" encoding="UTF-8" ?> 
 <user>
  <data errorcode="0" usernum="100626" 
username="u1" sex="1" nickname="麦芽糖" 
score="0" province="" city="" area="" /> 
  </user>


我在PHP中这样获取到这个XML:
使用自己写的gethttpdata方法,是为了容错,避免访问远程服务器出错时程序报错。

$login_interface_url = "http://www.1.com/1.xml";
$data = gethttpdata($login_interface_url); //获取远程文件内容
$xml = simplexml_load_string($data);
$xmldata = var_export($xml,true);
        //如果使用var_dump()就直接输出了,不是我想要的。



接下来我怎么读取这个xmldata呢?
如何获得<data errorcode="0" usernum="100626" ...>中的各个属性的值呢?
[解决办法]
本帖最后由 xuzuning 于 2012-11-25 22:28:58 编辑 默认是 utf-8 的
$string = <<<XML
<?xml version="1.0" encoding="gb2312" ?> 
<a>
<foo name="Jack" game="lonely">1</foo>
<foo name="千斤顶" game="寂寞">1</foo>
</a>
XML;

$xml = simplexml_load_string($string);//但也可以接受非 utf-8 声明的xml
foreach($xml->foo as $item) {
  foreach($item->attributes() as $a => $b) {
    echo $a,'="',$b,""\n";
  }
}

但结果还是 utf-8 的
name="Jack"
game="lonely"
name="千斤顶"
game="寂寞"

热点排行