我正在使用curl与php运行这样的后台工作:
function RunBackground($script)
{
$cs=curl_init();
curl_setopt($cs, CURLOPT_TIMEOUT, 1);
curl_setopt($cs, CURLOPT_URL, $script);
$response = curl_exec($cs);
curl_close($cs);
}
RunBackground("script.php?some=variables");
但是我有一些输出,其中一切都应该在$ response no ?? 感谢
答案 0 :(得分:1)
您必须将选项CURLOPT_RETURNTRANSFER
设置为true
curl_setopt($cs, CURLOPT_RETURNTRANSFER, true);
如果设置了此选项,则返回结果并将其存储在变量中。否则curl_exec
会在成功时返回true
,并在出错时返回false
。
另请参阅:http://php.net/manual/en/function.curl-exec.php
成功时返回TRUE,失败时返回FALSE。但是,如果设置了CURLOPT_RETURNTRANSFER选项,它将在成功时返回结果,在失败时返回FALSE。
所以你的完整例子应该是
function RunBackground($script)
{
$cs=curl_init();
curl_setopt($cs, CURLOPT_TIMEOUT, 1);
curl_setopt($cs, CURLOPT_URL, $script);
curl_setopt($cs, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($cs);
curl_close($cs);
}
RunBackground("script.php?some=variables");