我想在一个项目中使用PHP cURL,在一个场景中,我需要通过cURL发送数据并等待响应(并延迟所有代码,直到在cURL请求中收到响应)-同步请求,我还想在另一个场景中异步发送数据,而不是等待cURL请求完成。
是否有cURL参数或函数可以用来异步发送数据,而不等待来自目标URL的响应来继续执行代码?
下面是我的代码,默认情况下,请求是同步的,脚本会一直等待,直到目标URL发出响应。
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
$result = curl_exec($ch);
curl_close($ch);
我的应用程序有两种情况:
1)数据需要传递到辅助服务器,一旦确认服务器已接收到数据,就继续在应用程序中执行代码;
2)数据被传递到辅助服务器,但传递的信息并不重要,因此我们不需要等待服务器收到确认,就可以继续。谢谢
2条答案
按热度按时间wn9m85ua1#
下面是PHP Docs中的一个示例,说明如何异步使用curl:
lvjbypge2#
下面是使用curl进行异步调用的示例代码: