查詢

curl_share_setopt()函式—用法及示例

「 設定 cURL 共享控制代碼的選項 」


函式名: curl_share_setopt()

適用版本: PHP 5 >= 5.5.0, PHP 7

函式說明: curl_share_setopt() 函式用於設定 cURL 共享控制代碼的選項。

用法: bool curl_share_setopt ( resource $sh , int $option , mixed $value )

引數:

  • $sh: cURL 共享控制代碼,由函式 curl_share_init() 建立。
  • $option: 需要設定的選項。
  • $value: 選項對應的值。

返回值: 如果設定成功,返回 TRUE;否則返回 FALSE。

常用選項:

  • CURLSHOPT_SHARE: 用於表示在共享 cookie 內容時需要的鎖定函式。值為 CURL_LOCK_DATA_COOKIE。
  • CURLSHOPT_UNSHARE: 用於表示在共享 cookie 內容時需要的解鎖函式。值為 CURL_UNLOCK_DATA_COOKIE。
  • CURL_LOCK_DATA_COOKIE: 用於鎖定共享 cookie 內容。
  • CURL_UNLOCK_DATA_COOKIE: 用於解鎖共享 cookie 內容。

示例:

// 建立 cURL 共享控制代碼
$sh = curl_share_init();

// 設定共享選項
curl_share_setopt($sh, CURLSHOPT_SHARE, CURL_LOCK_DATA_COOKIE);

// 建立多個 cURL 控制代碼
$ch1 = curl_init();
$ch2 = curl_init();

// 配置共享控制代碼
curl_setopt($ch1, CURLOPT_SHARE, $sh);
curl_setopt($ch2, CURLOPT_SHARE, $sh);

// 設定 cURL 控制代碼的 URL
curl_setopt($ch1, CURLOPT_URL, 'http://www.example.com/1');
curl_setopt($ch2, CURLOPT_URL, 'http://www.example.com/2');

// 執行請求
curl_exec($ch1);
curl_exec($ch2);

// 關閉 cURL 控制代碼
curl_close($ch1);
curl_close($ch2);

// 關閉共享控制代碼
curl_share_close($sh);

上述示例中,首先透過 curl_share_init() 建立了一個 cURL 共享控制代碼 $sh。然後使用 curl_share_setopt() 設定共享選項,這裡使用 CURLSHOPT_SHARE 將共享控制代碼鎖定為共享 cookie 內容。接著,建立了兩個 cURL 控制代碼 $ch1 和 $ch2,並設定 CURLOPT_SHARE 選項為 $sh,以實現共享 cookie 內容。最後,使用 curl_exec() 執行請求,並關閉控制代碼和共享控制代碼。

透過 curl_share_setopt() 函式,可以更靈活地配置 cURL 共享控制代碼的選項,實現對共享資源的控制。該函式在處理多個併發請求、共享 cookie 或連線池等場景中非常有用。

補充糾錯
上一個函式: curl_share_init()函式
下一個函式: curl_share_strerror()函式
熱門PHP函式
分享連結