2015-10-06 106 views
0

從一個PHP頁面,我必須做一個到另一個PHP文件。 我不在乎等待收到的回覆,也不知道它是否成功。PHP:瞭解CURL超時

調用的文件可能會在5-6秒內結束腳本,所以我不知道如何處理獲取超時,考慮到之前所說的。

的代碼是這個

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, 'http://mywebsite/myfile.php'); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, false); 
curl_setopt($ch, CURLOPT_TIMEOUT, 1); 
$content = trim(curl_exec($ch)); 
curl_close($ch); 
+3

如果您不「不在意等待迴應或知道它是否成功」,那麼......爲什麼要加載呢? –

+0

這聽起來很不祥,就像您試圖使用GET請求來實現應該使用POST執行的操作一樣... –

+0

cURL超時定義了curl等待響應來臨的時間。它不定義被調用腳本的最大執行時間。後者必須在「其他」方面處理。 – jossif

回答

0

對於第一個任務(如果你不需要等待響應),你就可以開始新的後臺進程低於寫代碼,這將您重定向另一頁上。

0

是啊,你肯定不應該在服務器上創建一個文件來響應GET請求。即使作爲一種副作用,它也不夠理想;作爲請求的主要目的,它只是沒有意義。

如果你的這樣做的POST,你仍然有同樣的問題來處理,但是。在這種情況下,如果無法保證該操作足以在HTTP上下文中被接受,則需要將其從其他地方移出。例如。讓你的HTTP請求發送一條消息給其他並行工作的系統,同時HTTP響應可以立即發回。