我如何解析从CURL返回的响应?

时间:2010-03-17 04:11:42

标签: php curl

我正在使用Curl将一些数据发送到外部URL。服务器以类似这样的字符串向我发回响应:

trnApproved=0&trnId=10000002&messageId=7&messageText=DECLINE

我可以将此字符串分配给这样的变量:

$txResult = curl_exec( $ch );
echo "Result:<BR>"; echo $txResult;

但是如何使用发回的数据?我需要一种方法来获取发回的每个变量的值,以便我可以在我的PHP脚本中使用它。

非常感谢任何帮助。

感谢。

2 个答案:

答案 0 :(得分:7)

Curl的默认行为是将您返回的数据转储到浏览器中。为了将其捕获到变量,您需要:

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$txResult = curl_exec($ch);

这种默认行为一直让我恼火。从curl_exec()调用返回数据似乎对我来说是更正确的选择。

答案 1 :(得分:3)

使用parse_str()

parse_str($txResult, $txArr);
var_dump($txArr);