Heim  >  Artikel  >  Backend-Entwicklung  >  PHP怎么解析XML代码

PHP怎么解析XML代码

WBOY
WBOYOriginal
2016-06-13 11:10:53784Durchsuche

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吧?
有人能版本帮帮我么?
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn