Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

curl_multi_init(3) [php man page]

CURL_MULTI_INIT(3)							 1							CURL_MULTI_INIT(3)

curl_multi_init - Returns a new cURL multi handle

SYNOPSIS
resource curl_multi_init (void ) DESCRIPTION
Allows the processing of multiple cURL handles asynchronously. PARAMETERS
This function has no parameters. RETURN VALUES
Returns a cURL multi handle resource on success, FALSE on failure. EXAMPLES
Example #1 curl_multi_init(3) example This example will create two cURL handles, add them to a multi handle, and process them asynchronously. <?php // create both cURL resources $ch1 = curl_init(); $ch2 = curl_init(); // set URL and other appropriate options curl_setopt($ch1, CURLOPT_URL, "http://lxr.php.net/"); curl_setopt($ch1, CURLOPT_HEADER, 0); curl_setopt($ch2, CURLOPT_URL, "http://www.php.net/"); curl_setopt($ch2, CURLOPT_HEADER, 0); //create the multiple cURL handle $mh = curl_multi_init(); //add the two handles curl_multi_add_handle($mh,$ch1); curl_multi_add_handle($mh,$ch2); $active = null; //execute the handles do { $mrc = curl_multi_exec($mh, $active); } while ($mrc == CURLM_CALL_MULTI_PERFORM); while ($active && $mrc == CURLM_OK) { if (curl_multi_select($mh) != -1) { do { $mrc = curl_multi_exec($mh, $active); } while ($mrc == CURLM_CALL_MULTI_PERFORM); } } //close the handles curl_multi_remove_handle($mh, $ch1); curl_multi_remove_handle($mh, $ch2); curl_multi_close($mh); ?> SEE ALSO
curl_init(3), curl_multi_close(3). PHP Documentation Group CURL_MULTI_INIT(3)

Check Out this Related Man Page

CURL_SHARE_SETOPT(3)							 1						      CURL_SHARE_SETOPT(3)

curl_share_setopt - Set an option for a cURL share handle.

SYNOPSIS
bool curl_share_setopt (resource $sh, int $option, string $value) DESCRIPTION
Sets an option on the given cURL share handle. PARAMETERS
o $sh - A cURL share handle returned by curl_share_init(3). o $option - +------------------+--------------------------------------+---+ | Option | | | | | | | | | Description | | | | | | +------------------+--------------------------------------+---+ | | | | | CURLSHOPT_SHARE | | | | | | | | | Specifies a type of data that | | | | should be shared. | | | | | | | | | | |CURLSHOPT_UNSHARE | | | | | | | | | Specifies a type of data that will | | | | be no longer shared. | | | | | | +------------------+--------------------------------------+---+ o $value - +---------------------------+--------------------------------------+---+ | Value | | | | | | | | | Description | | | | | | +---------------------------+--------------------------------------+---+ | | | | | CURL_LOCK_DATA_COOKIE | | | | | | | | | Shares cookie data. | | | | | | | | | | | CURL_LOCK_DATA_DNS | | | | | | | | | Shares DNS cache. Note that when | | | | you use cURL multi handles, all han- | | | | dles added to the same multi handle | | | | will share DNS cache by default. | | | | | | | | | | |CURL_LOCK_DATA_SSL_SESSION | | | | | | | | | Shares SSL session IDs, reducing | | | | the time spent on the SSL handshake | | | | when reconnecting to the same | | | | server. Note that SSL session IDs | | | | are reused within the same handle by | | | | default. | | | | | | +---------------------------+--------------------------------------+---+ RETURN VALUES
Returns TRUE on success or FALSE on failure. EXAMPLES
Example #1 curl_share_setopt(3) example This example will create a cURL share handle, add two cURL handles to it, and then run them with cookie data sharing. <?php // Create cURL share handle and set it to share cookie data $sh = curl_share_init(); curl_share_setopt($sh, CURLSHOPT_SHARE, CURL_LOCK_DATA_COOKIE); // Initialize the first cURL handle and assign the share handle to it $ch1 = curl_init("http://example.com/"); curl_setopt($ch1, CURLOPT_SHARE, $sh); // Execute the first cURL handle curl_exec($ch1); // Initialize the second cURL handle and assign the share handle to it $ch2 = curl_init("http://php.net/"); curl_setopt($ch2, CURLOPT_SHARE, $sh); // Execute the second cURL handle // all cookies from $ch1 handle are shared with $ch2 handle curl_exec($ch2); // Close the cURL share handle curl_share_close($sh); // Close the cURL handles curl_close($ch1); curl_close($ch2); ?> PHP Documentation Group CURL_SHARE_SETOPT(3)
Man Page