試圖做出捲曲處理程序,並定義它們捲曲5名兒童的,但無法找到最好的way..my代碼到目前爲止PHP通過陣列
$curls = array($ch1, $ch2, $ch3, $ch4, $ch5); // have a bad feelin about this
$cont = array($cont1, $cont2, $cont3, $cont4, $cont5); // bad
for($i = 0; $i < count($curls); $i++) { // bad
$curls[$i] = curl_init();
curl_setopt($curls[$i], CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curls[$i], CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curls[$i], CURLOPT_REFERER, $ref);
curl_setopt($curls[$i], CURLOPT_USERAGENT, $useragent);
curl_setopt($curls[$i], CURLOPT_COOKIEFILE, $cookiefile);
curl_setopt($curls[$i], CURLOPT_COOKIEJAR, $cookiefile);
curl_setopt($curls[$i], CURLOPT_URL, $url);
curl_setopt($curls[$i], CURLOPT_POST, true);
curl_setopt($curls[$i], CURLOPT_POSTFIELDS, $data);
$cont[$i] = curl_exec($curls[$i]); // bad
curl_setopt($curls[$i], CURLOPT_URL, $url);
curl_setopt($curls[$i], CURLOPT_POST, true);
curl_setopt($curls[$i], CURLOPT_POSTFIELDS, $data);
$cont[$i] = curl_exec($curls[$i]); // bad
}
,後來定義multible捲髮:
$mh = curl_multi_init();
curl_multi_add_handle($mh,$ch1);
curl_multi_add_handle($mh,$ch2);
curl_multi_add_handle($mh,$ch3);
curl_multi_add_handle($mh,$ch4);
curl_multi_add_handle($mh,$ch5);
做這個工作還是..這種最佳方式?似乎有點顛簸
你爲什麼要在定義它們的循環中執行句柄?多個手柄不是並行執行的嗎? – 2011-05-15 19:07:16
@Tim Yates:他們不是在做平行手柄,他們是一個接一個的登錄,當他們都登錄後,他們開始做並行工作 – Jaanus 2011-05-15 19:27:05
您是否需要登錄到不同的帳戶或每個帳戶?你能不能在一次登錄後共享cookie文件? – 2011-05-15 20:11:34