2012-08-13 39 views
0

我在php中使用curl multi exec。我從db讀取一些URL並傳遞給curl。這些網址也有與之相關的ID。下載完成後,瞭解與其關聯的ID很重要。你能否告訴我有無論如何傳遞一個變量,curl會在響應中返回它。php curl多如何傳遞迴調值

在此先感謝 wantro

回答

3

你可以只維護自己的數據關聯每一個捲曲處理。

$associatedData = array(); 

$ch = curl_init(); 
$id = (int) $ch; // will yield a unique number because resources have a globally unique numeric id 
$associatedData[$id] = array('data' => $foo); 

// now add it via curl_multi_add_handle() etc... 

然後,以後當你正在處理的手柄,你可以查找相關數據

$id = (int) $ch; 
$data = $associatedData[$id]; 
2

存儲私人數據捲曲容易手柄內,如:

curl_setopt($ch, CURLOPT_PRIVATE, $url->getId()); 
// then later 
$id = curl_getinfo($ch, CURLINFO_PRIVATE); 

這「私人數據」功能尚未記錄在PHP手冊中。它已經在PHP 5.2.4中引入。它允許您在cURL句柄內存儲和檢索您選擇的字符串。將其用於網址ID。

查看重複的問題php - CURL Multi get info about a particular handle