curl_share_init

(PHP 5 >= 5.5.0, PHP 7, PHP 8)

curl_share_initInitialise un gestionnaire partagé cURL

Description

curl_share_init(): CurlShareHandle

Autorise le partage de données entre gestionnaires cURL.

Liste de paramètres

Cette fonction ne contient aucun paramètre.

Valeurs de retour

Retourne un gestionnaire cURL partagé.

Historique

Version Description
8.0.0 Cette fonction retourne désormais une instance de CurlShareHandle; auparavant, une resource était retournée.

Exemples

Exemple #1 Exemple avec curl_share_init()

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

<?php
// Crée un gestionnaire partagé cURL, et le définit pour partager les données de cookies
$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 second 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 du 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);
?>

Voir aussi

add a note add a note

User Contributed Notes 1 note

up
1
Robert Chapin
6 years ago
Cookie handling is DISABLED by default.  The following must be used prior to CURLOPT_SHARE.

curl_setopt($ch1, CURLOPT_COOKIEFILE, "");
curl_setopt($ch2, CURLOPT_COOKIEFILE, "");

Also, do not attempt to use CURLOPT_SHARE with curl_setopt_array because this can cause the options to be set in the wrong order, which will fail.
To Top