适用版本(PHP 8 >= 8.2.0)
功能:执行任何连接维护检查
说明
curl_upkeep(CurlHandle $handle): bool
如果针对 libcurl >= 7.62.0 构建,则可用。一些协议具有“连接维护”机制。这些机制通常会在现有连接上发送一些流量,以保持它们的活动;例如,这可以防止连接由于过度热心的防火墙而被关闭。
连接维护当前仅适用于 HTTP/2 连接。通常会发送少量流量以保持连接处于活动状态。 HTTP/2 通过发送 HTTP/2 PING 帧来维持连接。
参数
handle
由 curl_init() 返回的 cURL 句柄。
返回值
成功时返回 true, 或者在失败时返回 false。
示例
示例 #1 curl_upkeep() example
<?php
$url = "https://example.com";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTP_VERSION,CURL_HTTP_VERSION_2_0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_UPKEEP_INTERVAL_MS, 200);
if (curl_exec($ch)) {
usleep(300);
var_dump(curl_upkeep($ch));
}
curl_close($ch);
?>