Проверяет и поддерживает соединение в рабочем состоянии

# curl_upkeep

(PHP 8 >= 8.2.0)

curl_upkeep — Проверяет и поддерживает соединение в рабочем состоянии

### Описание

function curl_upkeep(CurlHandle `$handle`): bool

Функция доступна, только если PHP-модуль cURL собрали с библиотекой libcurl >= 7.62.0.

Отдельные протоколы поддерживают механизмы «обслуживания соединения». Такие механизмы в стандартном сценарии передают небольшой объем данных через текущие соединения, чтобы соединения оставались активными; это предотвращает разрыв соединений, например, из-за агрессивной политики межсетевых экранов.

Механизм обслуживания и поддержки соединений доступен только для соединений по протоколу HTTP/2. Для поддержания соединения отправляется небольшой объем трафика. Протокол HTTP/2 обслуживает соединение путём отправки HTTP/2-команды PING.

### Список параметров

`handle`
  Дескриптор модуля cURL, который вернула функция curl_init().

### Возвращаемые значения

Функция возвращает `true`, если выполнилась успешно, или `false`, если возникла ошибка.

### Примеры

Пример #1 Пример проверки работоспособности соединения функцией 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_init() - Инициализирует cURL-сеанс сетевой передачи данных

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open