查詢

curl_share_init()函式—用法及示例

「 建立一個新的 CurlShare 控制代碼,用於共享 curl 控制代碼之間的資料 」


函式名:curl_share_init()

適用版本:PHP 5.5.0 及以上版本

用法:curl_share_init() 函式用於建立一個新的 CurlShare 控制代碼,用於共享 curl 控制代碼之間的資料。

語法:resource curl_share_init( void )

返回值:返回一個 CurlShare 控制代碼,如果建立失敗則返回 false。

示例:

// 建立 CurlShare 控制代碼
$shareHandle = curl_share_init();

// 設定共享的選項,如 COOKIE 和 DNS 快取
curl_share_setopt($shareHandle, CURLSHOPT_SHARE, CURL_LOCK_DATA_COOKIE);
curl_share_setopt($shareHandle, CURLSHOPT_SHARE, CURL_LOCK_DATA_DNS);

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

// 設定共享控制代碼到每個 Curl 控制代碼
curl_setopt($ch1, CURLOPT_SHARE, $shareHandle);
curl_setopt($ch2, CURLOPT_SHARE, $shareHandle);

// 設定每個 Curl 控制代碼的 URL
curl_setopt($ch1, CURLOPT_URL, 'http://www.example.com/api1');
curl_setopt($ch2, CURLOPT_URL, 'http://www.example.com/api2');

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

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

在上面的示例中,我們首先使用 curl_share_init() 函式建立了一個 CurlShare 控制代碼 $shareHandle,然後使用 curl_share_setopt() 函式設定了需要共享的選項,包括 COOKIE 和 DNS 快取。

接著,我們建立了兩個 Curl 控制代碼 $ch1$ch2,使用 curl_setopt() 函式將共享控制代碼設定到每個 Curl 控制代碼中,然後設定了各自的 URL。

最後,我們分別執行了 $ch1$ch2 的 Curl 請求,並關閉了 Curl 控制代碼。

透過使用 CurlShare 控制代碼,我們可以在多個 Curl 控制代碼之間共享某些資料,提高請求的效率和效能。

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