(PHP 8 >= 8.2.0)
curl_upkeep — Realiza los controles de mantenimiento de la conexión
Disponible si construido con libcurl >= 7.62.0.
Algunos protocolos tienen mecanismos de "mantenimiento de la conexión". Estos mecanismos generalmente envían tráfico sobre las conexiones existentes para mantenerlas vivas; Esto permite, por ejemplo, evitar que las conexiones sean cerradas debido a firewalls demasiado celosos.
El mantenimiento de la conexión está actualmente disponible solo para las conexiones HTTP/2. Una pequeña cantidad de tráfico es generalmente enviada para mantener una conexión viva. HTTP/2 mantiene su conexión enviando una trama HTTP/2 PING.
Ejemplo #1 Ejemplo de curl_upkeep()
<?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);
?>