我正在使用curl发送数据然后作为响应我给出了一些值。如果满足则响应应为true
,如果不满,则返回字符串错误消息。
我的代码如下,
if(curl_exec($ch) === true){
return true;
}else{
return curl_exec($ch);
}
在我的回复文件中,我写了这个,
if($_POST['license']=='123456'){
echo 'License already in use';
}else{
echo true;
}
我认为echo true
是相同的,第一个条件curl_exec($ch)===true)
应该满足。我无法理解我哪里出错了。请以正确的方式开车送我。
修改
我使用var_dump转储它,并显示string
类型insead boolean
- > string '' (length=0)
我的卷曲代码是
$site = array('license' => $this->key, 'domain' => $this->domain, 'server' => $_SERVER['HTTP_HOST']);
curl_setopt($ch, CURLOPT_URL, EXTENSION_VERIFY_URL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $site);
if(curl_exec($ch) === true){
return true;
}else{
return curl_exec($ch);
}
答案 0 :(得分:0)
两次调用curl_exec()
可能是失败的。相反,您应该将返回值存储在变量(例如$result = curl_exec()
)中,并使用它来测试。
除此之外,请尝试echo
类似t
而不是true f:License already in use
而不是字符串。这样,如果一切正常,你总会返回一个字符串。