curl_share_init_persistent

(PHP 8 >= 8.5.0)

curl_share_init_persistentInicializa um identificador compartilhado cURL persistente

Descrição

curl_share_init_persistent(array $share_options): CurlSharePersistentHandle

Inicializa um identificador compartilhado cURL persistente com as opções de compartilhamento informadas. Diferente de curl_share_init(), os identificadores criados por esta função não serão destruídos ao final da requisição PHP. Se um identificador compartilhado persistente com o mesmo conjunto de share_options for encontrado, ele será reutilizado.

Parâmetros

share_options
Um array não vazio de constantes CURL_LOCK_DATA_*.

Nota: CURL_LOCK_DATA_COOKIE não é permitida e, se utilizada, esta função lançará uma exceção ValueError. Compartilhar cookies entre requisições PHP pode levar a uma mistura inadvertida de cookies sensíveis entre usuários.

Valor Retornado

Retorna um objeto CurlSharePersistentHandle.

Erros/Exceções

  • Se share_options estiver vazio, esta função lança uma exceção ValueError.
  • Se share_options contiver um valor que não corresponde a uma constante CURL_LOCK_DATA_*, esta função lança uma exceção ValueError.
  • Se share_options contiver CURL_LOCK_DATA_COOKIE, esta função lança uma exceção ValueError.
  • Se share_options contiver um valor não inteiro, esta função lança uma exceção TypeError.

Exemplos

Exemplo #1 Exemplo de curl_share_init_persistent()

Este exemplo criará um identificador de compartilhamento cURL persistente e demonstrará conexões compartilhadas entre si. Se isso for executado em um PHP SAPI de longa duração, $sh sobreviverá entre as requisições SAPI.

<?php
// Cria ou recupera um identificador de compartilhamento cURL persistente definido para compartilhar pesquisas e conexões de DNS.
$sh = curl_share_init([CURL_LOCK_DATA_DNS, CURL_LOCK_DATA_CONNECT]);

// Inicializa o primeiro identificador cURL e atribui a ele o identificador de compartilhamento.
$ch1 = curl_init("http://example.com/");
curl_setopt($ch1, CURLOPT_SHARE, $sh);

// Executa o primeiro identificador cURL. Isto pode reutilizar a conexão de uma solicitação SAPI anterior.
curl_exec($ch1);

// Inicializa o segundo identificador cURL e atribui o identificador de compartilhamento a ele.
$ch2 = curl_init("http://example.com/");
curl_setopt($ch2, CURLOPT_SHARE, $sh);

// Executa o segundo identificador cURL. Isso reutilizará a conexão de $ch1.
curl_exec($ch2);

// Fecha os identificadores cURL
curl_close($ch1);
curl_close($ch2);
?>

Veja Também

adicione uma nota

Notas Enviadas por Usuários (em inglês)

Não há notas de usuários para esta página.
To Top