我想使用curl运行一个函数作为后台进程。以下是我的代码。
foreach ($iles $file=> $size) {
$params ="file=$file&fullpath=$fullpath&minWidth=$minWidth";
$url = 'http://test.rul.com/file/listFiles?'.$params;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$curled=curl_exec($ch);
curl_close($ch);
}
}
public function getlistFiles() {
$fullpath = $_REQUEST['fullpath'];
}
但是这个卷曲没有在后台运行。我该如何将其作为背景执行?
答案 0 :(得分:1)
以下是使用curl调用脚本的示例:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_TIMEOUT_MS, 400);
curl_setopt($ch, CURLOPT_NOSIGNAL, 1);
$response = curl_exec($ch);
curl_close($ch);
第二个脚本
ignore_user_abort(true);
usleep(500000); // wait 500ms
// do stuff
请注意,您将始终收到卷曲错误CURLE_OPERATION_TIMEDOUT
,可以忽略该错误。