php curl post 超时设置,在PHP中设置curl的超时参数(timeout)
如下:
我通過php在一個已經(jīng)建好的數(shù)據(jù)庫上發(fā)起curl請求.這個數(shù)據(jù)庫非常龐大,因此它始終需要很長時間返回XML響應(yīng).為了解決這個問題,我準(zhǔn)備了一個應(yīng)該有長超時時間的curl請求.
$ch = curl_init();
$headers["Content-Length"] = strlen($postString);
$headers["User-Agent"] = "Curl/1.0";
curl_setopt($ch, CURLOPT_URL, $requestUrl);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERPWD, 'admin:');
curl_setopt($ch,CURLOPT_TIMEOUT,1000);
$response = curl_exec($ch);
curl_close($ch);
然而這個curl請求始終在請求完成前終止(通過瀏覽器請求時不到1秒),有沒有人知道在curl中,這是否是一個合適的方法?
回答:?
看文檔: http://www.php.net/manual/en/function.curl-setopt.php
CURLOPT_CONNECTTIMEOUT -嘗試連接時等待的秒數(shù),輸入0不需要等待.
CURLOPT_TIMEOUT -允許curl函數(shù)執(zhí)行的最大秒數(shù).
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT ,0);
curl_setopt($ch, CURLOPT_TIMEOUT, 400); //timeout in seconds
不要忘了增加php腳本本身的執(zhí)行時間:
set_time_limit(0);// to infinity for example
總結(jié)
以上是生活随笔為你收集整理的php curl post 超时设置,在PHP中设置curl的超时参数(timeout)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1分钟学会python_快速入门:十分钟
- 下一篇: 何必庸人自扰意思 何必庸人自扰是什么意思