curl_share_setopt
curl_share_setopt
(PHP 5 >= 5.5.0, PHP 7)
curl_share_setopt - 为cURL共享句柄设置选项。
描述
bool curl_share_setopt ( resource $sh , int $option , string $value )
在给定的cURL共享句柄上设置一个选项。
参数
sh
由curl_share_init()返回的cURL共享句柄。
option
选项 | 描述 |
---|---|
CURLSHOPT_SHARE | 指定应该共享的数据类型。 |
CURLSHOPT_UNSHARE | 指定将不再共享的数据类型。 |
value
值 | 描述 |
---|---|
CURL_LOCK_DATA_COOKIE | 分享Cookie数据。 |
CURL_LOCK_DATA_DNS | 共享DNS缓存。请注意,当您使用cURL多个句柄时,默认情况下,添加到同一个多句柄的所有句柄将共享DNS缓存。 |
CURL_LOCK_DATA_SSL_SESSION | 共享SSL会话ID,减少重新连接到同一台服务器时花在SSL握手上的时间。请注意,默认情况下,SSL会话ID在相同的句柄中重用。 |
返回值
成功返回TRUE
或失败时返回FALSE。
例子
Example #1 curl
_
share
_
setopt() example
此示例将创建一个cURL共享句柄,为其添加两个cURL句柄,然后使用Cookie数据共享运行它们。
<?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
?>
← curl_share_init
curl_share_strerror →