PHP怎么解析XML代码

WBOY
リリース: 2016-06-13 11:10:53
オリジナル
821 人が閲覧しました

PHP如何解析XML代码?
是一个短信接口:调用的代码如下:

<br />$res = file_get_contents("http://XXXXXXX/webservice.asmx/mt?Sn=$name&Pwd=$pwd&mobile=$tel&content=$msg");<br />print_r($res);<br />
ログイン後にコピー



print_r($res)后获得一段XML代码,如下:


0


看到这段代码中的0了么?我标了红色。如果返回值是0,则发送成功。
但是我这样判断是不可以的:
<br />if($res=="0"){<br />mysql_query("update sms set etime=now(),wei='发送成功' where sms_id='$sms_id'");<br />			}<br /><br />
ログイン後にコピー


请问我应该怎样判断获取到了0并在数据库中更新发送状态?


------解决方案--------------------
preg_match('/(.+)/s', $res,$r);
if($r[1]=="0"){
mysql_query("update sms set etime=now(),wei='发送成功' where sms_id='$sms_id'");
            }
------解决方案--------------------
返回xml是个字符串(而且非常短),你要判断的也是个字符串,所以没必要先解析xml
当然你去解析也不是错误,只是多耗点资源而已,先加载一个dom class,再parse
如果你要获得一个xml节点(复杂点的),再考虑后一种方法吧

#3的正则是一样的,但从返回的字串判断
你这情况就执行与不执行的布林值,所以我觉得连返回都可以省了
直接判断preg_match()是否True就够了

引用:
不明白,应该是用php先解析XML吧?
有人能版本帮帮我么?
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート