curl_share_setopt

(PHP 5 >= 5.5.0, PHP 7)

curl_share_setopt为 cURL 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷选锟筋。

说锟斤拷

curl_share_setopt ( resource $sh , int $option , string $value ) : bool

为锟斤拷锟斤拷锟斤拷 cURL 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷一锟斤拷选锟筋。

锟斤拷锟斤拷

sh

一锟斤拷锟斤拷curl_share_init()锟斤拷锟斤拷锟斤拷锟截碉拷 cURL 锟斤拷锟斤拷锟斤拷锟斤拷

option

Option Description
CURLSHOPT_SHARE 指锟斤拷要锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷汀锟�
CURLSHOPT_UNSHARE 指锟斤拷锟斤拷锟劫癸拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷汀锟�

value

Value Description
CURL_LOCK_DATA_COOKIE 锟斤拷锟斤拷 cookie 锟斤拷锟捷★拷
CURL_LOCK_DATA_DNS 锟斤拷锟斤拷 DNS 锟斤拷锟芥。注锟解,锟斤拷锟斤拷使锟斤拷 cURL 锟斤拷锟斤拷时锟斤拷默锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟酵伙拷锟斤拷锟斤拷锟斤拷木锟斤拷锟斤拷锟斤拷锟结共锟斤拷 DNS 锟斤拷锟芥。
CURL_LOCK_DATA_SSL_SESSION 锟斤拷锟斤拷 SSL 锟斤拷 session ID, 锟斤拷锟斤拷锟斤拷同锟斤拷锟侥凤拷锟斤拷锟斤拷时锟斤拷锟斤拷 SSL 锟斤拷锟斤拷时锟戒。注锟解,SSL 锟斤拷 session ID 锟斤拷同一锟斤拷锟侥撅拷锟斤拷锟侥拷锟斤拷锟斤拷馗锟绞癸拷玫摹锟�

锟斤拷锟斤拷值

锟缴癸拷时锟斤拷锟斤拷 TRUE锟斤拷 锟斤拷锟斤拷锟斤拷失锟斤拷时锟斤拷锟斤拷 FALSE锟斤拷

锟斤拷锟斤拷

Example #1 curl_share_setopt() 锟斤拷锟斤拷锟侥凤拷锟斤拷锟斤拷

锟斤拷锟铰凤拷锟斤拷锟斤拷锟结创锟斤拷一锟斤拷 cURL 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟� cURL 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷 cURL 锟斤拷锟斤拷锟� cookie 锟斤拷锟斤拷锟斤拷锟叫★拷

<?php
// Create cURL share handle and set it to share cookie data
$sh curl_share_init();
curl_share_setopt($shCURLSHOPT_SHARECURL_LOCK_DATA_COOKIE);

// Initialize the first cURL handle and assign the share handle to it
$ch1 curl_init("http://example.com/");
curl_setopt($ch1CURLOPT_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($ch2CURLOPT_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);
?>