PHP,CURL。curl_exec返回什么?

PHP,CURL。curl_exec返回什么?,php,curl,Php,Curl,我正在尝试设置一个带有支付处理器的API。下面是他们提供给我的代码。$result变量中有一些我想要的信息,但我不明白的是,$result是什么类型的变量,以及如何从中获取某些数据。打印$结果显示“交易ID为:xxxx状态已接受”。我基本上希望只获取事务ID并将其存储在变量中 foreach($_POST as $k=>$v) $$k=urldecode($v); $urladdress = "https://example.com/accapi/process.php"; $api_

我正在尝试设置一个带有支付处理器的API。下面是他们提供给我的代码。$result变量中有一些我想要的信息,但我不明白的是,$result是什么类型的变量,以及如何从中获取某些数据。打印$结果显示“交易ID为:xxxx状态已接受”。我基本上希望只获取事务ID并将其存储在变量中

foreach($_POST as $k=>$v) $$k=urldecode($v); 
$urladdress = "https://example.com/accapi/process.php"; 
$api_id = "dddd"; 
$api_pwd = "yyyyy"; 
$api_pwd = md5($api_pwd.'s+E_a*'); 
$data = "user=".$user. "&testmode=".$testmode."&api_id=".$api_id. "&api_pwd=".$api_pwd."&amount=".$amount."&paycurrency=".$currency."&comments=".$comments."&fee=".$fee."&udf1=".$udf1;
// Call STP API

$ch = curl_init(); curl_setopt($ch, CURLOPT_URL,"$urladdress"); 
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_HEADER, 0); //use this to suppress output 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false);// tell cURL to graciously accept an SSL certificate 
$result = curl_exec ($ch) or die(curl_error($ch)); 
echo $result; 
echo curl_error($ch); 
curl_close ($ch);
感谢您的帮助

成功时返回TRUE,失败时返回FALSE。但是,如果设置了CURLOPT_RETURNTRANSFER选项,则成功时返回结果,失败时返回FALSE

您的代码已经包含这一行(很好):

1
意味着您将从
$result=curl\u exec($ch)
收到解释性结果,而不仅仅是
true
false

因此,您的错误检查代码可能如下所示:

$result = curl_exec ($ch);
if($result === FALSE) {
    die(curl_error($ch));
}

您还可以通过以下方式检查它们返回的变量类型:
var\u dump($result)

重要信息发布后,您应该更改这些密码。哦,我明白了,所以成功后它会返回一个字符串。非常感谢你!,所以我所要做的就是使用字符串函数来分隔事务ID?“从PHP5.1.3中,这个选项没有任何效果:当使用CURLOPT_RETURNTRANSFER时,原始输出将始终返回”。
$result = curl_exec ($ch);
if($result === FALSE) {
    die(curl_error($ch));
}