函数名:curl_share_close()
适用版本:PHP 5 >= 5.5.0, PHP 7
说明:curl_share_close() 函数用于关闭 cURL 共享句柄。
用法:curl_share_close(resource $share_handle) : void
参数:
- $share_handle: 必需。一个 cURL 共享句柄,由curl_share_init()函数创建。
返回值:该函数没有返回值。
示例:
$share_handle = curl_share_init();
// 设置共享句柄的选项
curl_share_setopt($share_handle, CURLSHOPT_SHARE, CURL_LOCK_DATA_SHARE);
// 创建多个 cURL 句柄
$ch1 = curl_init();
$ch2 = curl_init();
// 设置 cURL 句柄的共享句柄
curl_setopt($ch1, CURLOPT_SHARE, $share_handle);
curl_setopt($ch2, CURLOPT_SHARE, $share_handle);
// 设置第一个 cURL 句柄的 URL
curl_setopt($ch1, CURLOPT_URL, "https://www.example.com/api1");
// 设置第二个 cURL 句柄的 URL
curl_setopt($ch2, CURLOPT_URL, "https://www.example.com/api2");
// 并行执行 cURL 请求
$mh = curl_multi_init();
curl_multi_add_handle($mh, $ch1);
curl_multi_add_handle($mh, $ch2);
curl_multi_exec($mh, $running);
// 关闭 cURL 共享句柄
curl_share_close($share_handle);
// 关闭 cURL 句柄和多句柄
curl_multi_remove_handle($mh, $ch1);
curl_multi_remove_handle($mh, $ch2);
curl_multi_close($mh);
上述示例中,我们先使用curl_share_init()函数创建了一个 cURL 共享句柄$share_handle,并通过curl_share_setopt()函数设置了共享句柄的选项。然后,我们创建了两个独立的 cURL 句柄$ch1和$ch2,并通过curl_setopt()函数将共享句柄设置给它们。接下来,我们将这两个句柄添加到一个多句柄$mh中,并使用curl_multi_exec()函数执行并行的 cURL 请求。最后,使用curl_share_close()函数关闭了共享句柄。
这样,我们就成功地使用了curl_share_close()函数来关闭 cURL 共享句柄,并确保了资源的正确销毁和释放。