curl_reset în PHP

cURL și email PHP 5.5+

Readuce toate opțiunile unei cereri cURL la valorile implicite, păstrând conexiunea deschisă pentru refolosire.

Sintaxă
curl_reset(CurlHandle $handle): void

Ce face curl_reset

Când faci mai multe cereri diferite către același server, refolosirea aceluiași obiect cURL păstrează conexiunea deschisă și economisește timp. curl_reset șterge opțiunile vechi (URL, metodă, antete, corp), ca o cerere POST să nu le „moștenească” pe cele ale cererii anterioare.

Conexiunile deschise, cache-ul DNS și cookie-urile primite rămân.

Parametri

Parametru Descriere
$handle Cererea cURL.

Ce returnează

Nimic.

Exemple

Exemplul 1: Opțiunile dispar după reset

<?php
$ch = curl_init("https://www.dexblog.ro/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
echo curl_getinfo($ch, CURLINFO_EFFECTIVE_URL) . "\n";

curl_reset($ch);
var_dump(curl_getinfo($ch, CURLINFO_EFFECTIVE_URL));

Rezultat

https://www.dexblog.ro/
string(0) ""

Greșeli frecvente

  • Faci o cerere GET după una POST pe același obiect fără reset. CURLOPT_POST și corpul rămân setate, iar a doua cerere este tot POST.

Comenzi înrudite

  • curl_init / curl_setopt / curl_exec: Pregătește o cerere HTTP către alt server, de exemplu un API. Împreună cu curl_setopt și curl_exec, trimite cererea și primește răspunsul.
  • curl_copy_handle: Creează o copie a unei cereri cURL, cu toate opțiunile ei, pe care o poți modifica separat.
  • curl_setopt_array: Setează mai multe opțiuni cURL dintr-o dată, dintr-un tablou. Codul devine mai scurt și mai ușor de citit.