curl_multi_close seems to close the curl_multi handle, but not each of the individual curl handles. at least in the PHP 5.3 development build I am using, these each need to be closed manually.
I would recommend the final lines of this example be updated to:
<?php
//close the handles
curl_multi_remove_handle($mh, $ch1);
curl_close($ch1);
curl_multi_remove_handle($mh, $ch2);
curl_close($ch2);
curl_multi_close($mh);
?>
curl_multi_close
(PHP 5)
curl_multi_close — Çoklu tanıtıcıyı kapatır
Açıklama
void curl_multi_close
( resource $cct
)
Çoklu cURL tanıtıcısını kapatır.
Dönen Değerler
Hiçbir değer dönmez.
Örnekler
Örnek 1 - curl_multi_close() örneği
Bu örnekte iki cURL tanıtıcısı oluşturulmakta, bunlar çoklu tanıtıcıya eklenerek birlikte çalıştırılmaktadır.
<?php
/// Tekil cURL özkaynaklarını oluşturalım
$ct1 = curl_init();
$ct2 = curl_init();
// URL'yi ve ilgili seçenekleri belirtelim
curl_setopt($ct1, CURLOPT_URL, "http://lxr.php.net/");
curl_setopt($ct1, CURLOPT_HEADER, 0);
curl_setopt($ct2, CURLOPT_URL, "http://www.php.net/");
curl_setopt($ct2, CURLOPT_HEADER, 0);
// Çokul cURL özkaynağını oluşturalım
$cct = curl_multi_init();
// Tekil tanıtıcıları çoklu tanıtıcıya ekleyelim
curl_multi_add_handle($cct,$ct1);
curl_multi_add_handle($cct,$ct2);
$running=null;
// tanıtıcıları çalıştıralım
do {
curl_multi_exec($mh,$running);
} while ($running > 0)
// tanıtıcıları kapatalım
curl_multi_remove_handle($cct, $ct1);
curl_multi_remove_handle($cct, $ct2);
curl_multi_close($cct);
?>
Ayrıca Bakınız
- curl_multi_init() - Yeni bir çoklu cURL tanıtıcısı döndürür
- curl_close() - cURL oturumunu sonlandırır
curl_multi_close
jonhohle at gmail dot com
08-Sep-2008 08:58
08-Sep-2008 08:58
