Пример создаст постоянный общий cURL-дескриптор и покажет
совместный доступ соединений к дескриптору. При выполнении сеансов передачи данных через долгоживущий
SAPI-интерфейс языка PHP дескриптор $sh
сохранится между SAPI-запросами.
<?php
// Создаём или получаем постоянный общий cURL-дескриптор, который настроен на совместную работу с DNS-запросами и подключениями
$sh = curl_share_init_persistent([CURL_LOCK_DATA_DNS, CURL_LOCK_DATA_CONNECT]);
// Инициализируем первый cURL-дескриптор и назначаем ему общий дескриптор
$ch1 = curl_init("http://example.com/");
curl_setopt($ch1, CURLOPT_SHARE, $sh);
// Выполняем первый cURL-дескриптор.
// Модуль совершит попытку передать данные через предыдущее соединение,
// если соединение открыли в предыдущем SAPI-запросе
curl_exec($ch1);
// Инициализируем второй cURL-дескриптор и назначаем ему общий дескриптор
$ch2 = curl_init("http://example.com/");
curl_setopt($ch2, CURLOPT_SHARE, $sh);
// Выполняем второй cURL-дескриптор. Модуль передаст данные через соединение дескриптора $ch1
curl_exec($ch2);
?>