PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

curl_errno> <curl_close
Last updated: Fri, 11 Apr 2008

view this page in

curl_copy_handle

(PHP 5)

curl_copy_handle — Copy a cURL handle along with all of its preferences

Opis

resource curl_copy_handle ( resource $ch )

Copies a cURL handle keeping the same preferences.

Parametry

ch

Uchwyt cURL zwrócony przez curl_init().

Zwracane wartości

Returns a new cURL handle.

Przykłady

Example #1 Copying a cURL handle

<?php
// create a new cURL resource
$ch curl_init();

// set URL and other appropriate options
curl_setopt($chCURLOPT_URL'http://www.example.com/');
curl_setopt($chCURLOPT_HEADER0);

// copy the handle
$ch2 curl_copy_handle($ch);

// grab URL (http://www.example.com/) and pass it to the browser
curl_exec($ch2);

// close cURL resources, and free up system resources
curl_close($ch2);
curl_close($ch);
?>



curl_errno> <curl_close
Last updated: Fri, 11 Apr 2008
 
add a note add a note User Contributed Notes
curl_copy_handle
administrator at proxy-list dot org
22-Jan-2008 02:08
There is some internal curl error (CURLE_FAILED_INIT) when you are trying to use just copied curl handle in curl_multi_add_handle(). I have checked the same problematic PHP code but with little difference: instead of creating curl’s copy I have used the original one (template). As I expect code works without any error. I think curl_multi_* along with curl_copy_handle() is still raw and needs some improvements.

With best wishes

Vitali Simsive
nicolac76 at yahoo dot fr
03-Sep-2007 12:14
Something work wrong if you use the var $i for a for...
$i cannot go over 127 (0111 1111b), more over you must say that the var is an int...

<?
$j
=(int)0;
$curl = curl_init("http://www.example.com");

for(
$j=1;$j<=128;$j++) {
   
$ch = curl_copy_handle($curl);
   
curl_close($ch);
}
curl_close($curl);
?>
Andrew
20-May-2007 08:39
You can use it for some kind of templates:

<?php
$ch
= array();
$ch[0] = curl_init();
curl_setopt($ch[0], CURLOPT_URL, 'http://beengo.net/');
curl_setopt($ch[0], CURLOPT_HEADER, 0);
curl_setopt($ch[0], CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch[0], CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch[0], CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);

$ch[1] = curl_copy_handle($ch[0]);
curl_setopt($ch[1], CURLOPT_URL, 'http://beengo.net/cells/list');

$ch[2] = curl_copy_handle($ch[0]);
curl_setopt($ch[2], CURLOPT_URL, 'http://beengo.net/cells/list?q=travel');

/* And so on, when you need to get number of pages with same parameters... */

?>

curl_errno> <curl_close
Last updated: Fri, 11 Apr 2008
 
 
show source | credits | sitemap | contact | advertising | mirror sites