使用php curl在后台运行脚本

时间:2018-02-04 18:55:07

标签: php curl background-process

我想使用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'];
 }

但是这个卷曲没有在后台运行。我该如何将其作为背景执行?

1 个答案:

答案 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,可以忽略该错误。