@yasarkemaldag;
hocam inceledim biraz aşağıdaki kod yapısında birden fazla linke bağlanıyor fakat bu şekilde de aynı şekilde ağır açılıyor böylesi bir yapı neyi hızlandırıyor anlamış değilim
bende linki for döngüsünde curl fonksiyonundan geçirip yaptığımda hemen hemen hız aynı
yani en alttaki kod sıradan curl ile for döngüsü kullandım işemin sonuçlanması 2dk sürüyor
curl_multi_init ilede 2dk sürüyor?
sonuçta for döngüsündede her linki açıyor curl_multi_init ilede açıyor ve zaman kaybı oluyor
hani dedim acaba json tarzı hafif kod yapısına çeviren bir yapı varmıdır diye düşündüm
http://www.sahadan.com/Match/Default.aspx?id=2772988 böyle bir linkin 200 defa yazdığını düşün
function coklu_istek($veri)
{
$curlle = array();
$sonuc = array();
$yer_tutucu = curl_multi_init();
foreach ($veri as $id => $d) {
$curlle[$id] = curl_init();
$url = is_array($d) ? $d['url'] : $d;
curl_setopt($curlle[$id], CURLOPT_URL, $url);
curl_setopt($curlle[$id], CURLOPT_HEADER, 0);
curl_setopt($curlle[$id], CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlle[$id], CURLOPT_USERAGENT,
"Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4");
curl_setopt($curlle[$id], CURLOPT_ENCODING, "");
curl_setopt($curlle[$id], CURLOPT_AUTOREFERER, 1);
curl_setopt($curlle[$id], CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($curlle[$id], CURLOPT_TIMEOUT, 10);
curl_setopt($curlle[$id], CURLOPT_MAXREDIRS, 2);
curl_multi_add_handle($yer_tutucu, $curlle[$id]);
}
$aktif= null;
do {
curl_multi_exec($yer_tutucu, $aktif);
} while ($aktif> 0);
foreach ($curlle as $id => $c) {
$sonuc[$id] = curl_multi_getcontent($c);
curl_multi_remove_handle($yer_tutucu, $c);
}
curl_multi_close($yer_tutucu);
return $sonuc;
}
$urller = array('http://www.asitesi.com',http://www.bsitesi.com',http://www.csitesi.com');
$gelen_veri=coklu_istek($urller);
buda benim for döngüsünde kullandığım yapı Baglan fonksiyonu normal curl fonksiyonum
aşağıdaki kod ile http://www.sahadan.com/Match/Default.aspx?id={$son[1][0] linki her döngüde curl fonksiyonu işlem yapıp yazdırabiliyor tüm linkleri
for($i=0;$i< count($cikti[0]);$i++){
preg_match_all($bak,$cikti[0][$i],$son);
$hlink = "http://www.sahadan.com/Match/Default.aspx?id={$son[1][0]}";
$curlB = Baglan($hlink);
//$hkara = "#<a href=\"(.*?)\" target=\"_blank\"><b>(.*?)</b></a>#";
$hkara = "#<a href=\"http://www.mackolik.com/Hakem/.*?/.*?\" target=\"_blank\"><b>(.*?)</b></a>#";
preg_match_all($hkara,$curlB,$hakemler);
}
?>