curl_share_setopt

(PHP 5 >= 5.5.0, PHP 7)

curl_share_setoptDéfinit une option du gestionnaire partagé cURL

Description

curl_share_setopt ( resource $sh , int $option , string $value ) : bool

Définit une option sur le gestionnaire partagé cURL fourni.

Liste de paramètres

sh

Un gestionnaire cURL retourné par la fonction curl_share_init().

option

Option Description
CURLSHOPT_SHARE Spécifie un type de données qui doivent être partagées.
CURLSHOPT_UNSHARE Spécifie un type de données qui ne doivent plus être partagées.

value

Valeur Description
CURL_LOCK_DATA_COOKIE Cookie de données partagées.
CURL_LOCK_DATA_DNS Cache DNS partagé. Notez que lorsque vous utilisez des gestionnaires multiples cURL, chaque gestionnaire ajouté au même gestionnaire multiple partage le cache DNS par défaut..
CURL_LOCK_DATA_SSL_SESSION Identifiants de session partagés SSL, réduisant le temps passé sur la négociation SSL lors d'une reconnection sur le même serveur. Notez que les identifiants de session SSL sont ré-utilisés dans le même gestionnaire par défaut.

Valeurs de retour

Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

Exemples

Exemple #1 Exemple avec curl_share_setopt()

Cet exemple va créer un gestionnaire partagé cURL, y ajoute deux gestionnaires cURL, puis, les exécute avec des cookies de données partagées.

<?php
// Crée un gestionnaire partagé cURL et le définit pour partager les cookies de données
$sh curl_share_init();
curl_share_setopt($shCURLSHOPT_SHARECURL_LOCK_DATA_COOKIE);

// Initialise le premier gestionnaire cURL et y assigne le gestionnaire partagé
$ch1 curl_init("http://example.com/");
curl_setopt($ch1CURLOPT_SHARE$sh);

// Exécute le premier gestionnaire cURL
curl_exec($ch1);

// Initialise le secon gestionnaire cURL et y assigne le gestionnaire partagé
$ch2 curl_init("http://php.net/");
curl_setopt($ch2CURLOPT_SHARE$sh);

// Exécute le second gestionnaire cURL
// Tous les cookies depuis le gestionnaire $ch1 sont partagés avec le gestionnaire $ch2
curl_exec($ch2);

// Ferme le gestionnaire partagé cURL
curl_share_close($sh);

// Ferme les gestionnaires cURL
curl_close($ch1);
curl_close($ch2);
?>