PHP调用Http短信接口(返回值为xml),在PHP中如何提取出来里面的值?

n_e_e_d 2013-05-24 02:40:33
这个Http接口返回的值为下面这种样式
<?xml version="1.0" encoding="utf-8" ?>
<returnsms>
<returnstatus>status</returnstatus>-------返回状态值:成功返回Success 失败返回:Faild
<message>message</message>--------------返回信息提示:见下表
</returnsms>
我运行PHP后在网页上出来:Sucess 预付费
页面上是$result = file_get_contents($gateway);

echo '返回结果'.$result;

请问怎样用俩个变量分别接受success 和预付费这俩个值?求高手解答!
...全文
124 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
n_e_e_d 2013-05-24
  • 打赏
  • 举报
回复
出来了,他message的返回值为空。郁闷!搞了一下午头大的!谢谢你了!
xuzuning 2013-05-24
  • 打赏
  • 举报
回复
他返回什么我不知道,但你应该知道的 如果你也不清楚的话就 print_r($xml); 看一下
n_e_e_d 2013-05-24
  • 打赏
  • 举报
回复
$gateway="http://sdk.kuai-xin.com:8888/sms.aspx?action=overage&userid={$userid}&account={$account}&password={$password}";

$result = file_get_contents($gateway);


那这儿的$result要怎么写呢?要从$gateway这个上面传参后获得那个xml的返回值。
我是这样写的

为什么页面上指出来success,没出来message呢?


xuzuning 2013-05-24
  • 打赏
  • 举报
回复
$result =<<< XML
<?xml version="1.0" encoding="utf-8" ?>
<returnsms>
<returnstatus>status</returnstatus>
<message>message</message>
</returnsms>
XML;
$xml = simplexml_load_string($result);
echo $xml->returnstatus, ' ', $xml->message;
status message
n_e_e_d 2013-05-24
  • 打赏
  • 举报
回复
那用什么接收呢?麻烦说下,谢谢!我以前没搞过这东西。第一次用。装环境对用了半天了!
  • 打赏
  • 举报
回复
你干嘛要用$result = file_get_contents($gateway);接收呢? 不是有专门接受xml格式的么?

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧