Ce face curl_share_setopt
Cu CURLSHOPT_SHARE adaugi un tip de date partajat, iar cu CURLSHOPT_UNSHARE îl scoți. Tipuri: CURL_LOCK_DATA_COOKIE (cookie-uri), CURL_LOCK_DATA_DNS (cache DNS), CURL_LOCK_DATA_SSL_SESSION (sesiuni TLS, conexiuni securizate mai rapide), CURL_LOCK_DATA_CONNECT (conexiuni deschise).
Pentru o opțiune necunoscută, PHP aruncă ValueError.
Parametri
| Parametru | Descriere |
|---|---|
$share_handle |
Obiectul de partajare. |
$option |
CURLSHOPT_SHARE sau CURLSHOPT_UNSHARE. |
$value |
Tipul de date, o constantă CURL_LOCK_DATA_*. |
Ce returnează
true la succes, false la eroare.
Exemple
Exemplul 1: Partajarea DNS și a sesiunilor TLS
<?php
$share = curl_share_init();
var_dump(curl_share_setopt($share, CURLSHOPT_SHARE, CURL_LOCK_DATA_DNS));
var_dump(curl_share_setopt($share, CURLSHOPT_SHARE, CURL_LOCK_DATA_SSL_SESSION));
echo "Eroare: " . curl_share_errno($share);
Rezultat
bool(true)
bool(true)
Eroare: 0
Greșeli frecvente
- Dai ca opțiune direct tipul de date:
curl_share_setopt($s, CURL_LOCK_DATA_DNS, true). Opțiunea esteCURLSHOPT_SHARE, iar tipul de date este valoarea.
Comenzi înrudite
curl_share_init: Creează un obiect prin care mai multe cereri cURL partajează cookie-uri, cache DNS sau conexiuni.curl_share_errno: Returnează codul ultimei erori a unui obiect de partajare cURL (0 dacă nu a fost eroare).