curl_share_setopt
(PHP 5 >= 5.5.0)
curl_share_setopt — Définit une option du gestionnaire partagé cURL
Description
bool curl_share_setopt
( resource
$sh
, int $option
, string $value
)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_SHARESpécifie un type de données qui doivent être partagées. CURLSHOPT_UNSHARESpécifie un type de données qui ne doivent plus être partagées. -
value -
Valeur Description CURL_LOCK_DATA_COOKIECookie de données partagées. CURL_LOCK_DATA_DNSCache 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_SESSIONIdentifiants 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($sh, CURLSHOPT_SHARE, CURL_LOCK_DATA_COOKIE);
// Initialise le premier gestionnaire cURL et y assigne le gestionnaire partagé
$ch1 = curl_init("http://example.com/");
curl_setopt($ch1, CURLOPT_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($ch2, CURLOPT_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);
?>