将cURL响应转换为变量

时间:2013-06-11 19:16:27

标签: php xml curl

我是curl和xml的菜鸟,但是我搜索了这个网站和网页以获得答案,而且我找不到任何工作。

我正在使用cURL发送XML,并且收件人服务正确地获取数据并创建我收到的响应。响应从curl_exec回显为

<TRANS>
    <HPAY>
        <ID>223</ID>
        <MLABEL>XXXX XXXX XXXX 9854</MLABEL>
        <DATE>11/06/2013 21:00:36</DATE>
        <SEN></SEN>
        <REC>sc</REC>
        <DEB>0.00</DEB>
        <CRED>10.34</CRED>
        <COM>2.00</COM>
        <MSG></MSG>
        <STATUS>3</STATUS>
    </HPAY>
</TRANS>

现在我需要将这些变成变量,现在我正在摸索如何做到这一点。

编辑,尝试粘贴浏览器源,但它会不断更改它。但是,要回答之前的评论,它是一个xml响应

2 个答案:

答案 0 :(得分:3)

只需使用SimpleXMLElement

$xml = new SimpleXMLElement($data);
$details = array();
foreach($xml->HPAY->children() as $k => $v) {
    $details[$k] = "$v";
}
print_r($details);

输出

Array
(
    [ID] => 223
    [MLABEL] => XXXX XXXX XXXX 9854
    [DATE] => 11/06/2013 21:00:36
    [SEN] => 
    [REC] => sc
    [DEB] => 0.00
    [CRED] => 10.34
    [COM] => 2.00
    [MSG] => 
    [STATUS] => 3
)

See Live DEMO

答案 1 :(得分:0)

您需要使用XML解析器(如xpath

)提取数据