我正在向一个服务器发送curl请求,服务器需要几秒钟来处理请求并给出响应。我相信我的php脚本正在继续运行,而不是等待,因此基于响应的foreach循环给出0个结果。在继续处理数据之前,我如何等待curl事务完成呢?
$curl = curl_init();
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($curl, CURLOPT_USERPWD, "admin:password");
curl_setopt($curl, CURLOPT_URL, "http://server/r/?dst_user__substr='user'");
curl_setopt($curl, CURLOPT_VERBOSE, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$ret = curl_exec($curl);
$result = json_decode($ret,true);
<<<<I need to wait until transaction is complete here>>>>
foreach ($result['data'] as $key => $value)
{
//process data from $result
}
2条答案
按热度按时间eblbsuwk1#
curl阻塞,这意味着:
将不执行,直到:
您可以使用curl_error()和curl_getinfo()检查HTTP响应代码来检查错误和其他问题。
vlf7wbxs2#
这真的很奇怪!,它不应该发生像你得到的。但无论如何尝试这样..
得到一个httpresonse代码,然后检查...