ホームページ > バックエンド開発 > PHPチュートリアル > 刚开始碰php,解析xml时碰到有关问题了

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-13 11:06:23
オリジナル
834 人が閲覧しました

刚开始碰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="寂寞"
関連ラベル:
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート