PHP 8.5.0 Released!

curl_reset

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

curl_resetlibcurl oturum tanıtıcısının tüm seçeneklerini sıfırlar

Açıklama

curl_reset(CurlHandle $tanıtıcı): void

Belirtilen cURL tanıtıcısının tüm seçeneklerine öntanımlı değerlerini atar.

Bağımsız Değişkenler

tanıtıcı

curl_init() işlevinden dönen bir cURL tanıtıcısı.

Dönen Değerler

Hiçbir değer dönmez.

Sürüm Bilgisi

Sürüm: Açıklama
8.0.0tanıtıcı için artık bir CurlHandle örneği bekleniyor; evvelce, resource türünde bir değer beklenirdi.

Örnekler

Örnek 1 - curl_reset() örneği

<?php
// cURL tanıtıcısı oluştur
$ch = curl_init();

// CURLOPT_USERAGENT seçeneğini tanımla
curl_setopt($ch, CURLOPT_USERAGENT, "My test user-agent");

// Tüm seçenekleri sıfırla
curl_reset($ch);

// HTTP isteği gönder
curl_setopt($ch, CURLOPT_URL, 'http://example.com/');
curl_exec($ch); // curl_reset ile sıfırlandığından tanımlanan değer gönderilmedi

// Tanıtıcıyı kapat
curl_close($ch);
?>

Notlar

Bilginize:

curl_reset() işlevi ayrıca curl_init() işlevinde URL belirten bağımsız değişkeni de sıfırlar.

Ayrıca Bakınız

add a note

User Contributed Notes 2 notes

up
8
Waloon
9 years ago
Hack for php < 5.5 : 

function curl_reset(&$ch){
  $ch = curl_init();
}
up
1
dev at codesatori dot com
8 years ago
If you're reusing a cUrl handle and want to ensure there's no residue from previous options -- but are frustrated with resetting the basics (e.g. FTP details) needed for each cURL call -- then here's an easy pattern to fix that:

<?php
class cUrlicue {
    
    protected $curl;

    /* Create the cURL handle */

    function __construct() {
        $this->curl = curl_init();
        $this->curl_init_opts();
        curl_exec($this->curl);
    }
    
    /* Reload your base options */

    function curl_init_opts() {
        $opts[CURLOPT_PROTOCOLS]         = CURLPROTO_FTP;
        $opts[CURLOPT_RETURNTRANSFER]     = true;
        $opts[CURLOPT_USERPWD]             = 'user:pass';
        //...
        curl_setopt_array($this->curl, $opts);
    }
    
    /* Use when making a new cURL call */

    function curl_exec($opts) {
        curl_reset($this->curl); // clears all old options
        $this->curl_init_opts(); // sets base options again
        curl_setopt_array($this->curl, $opts); // sets your new options
        return curl_exec($this->curl);
    }
    
    /* Your whatever cURL method */

    function curl_get_whatever() {
        $opts[CURLOPT_URL] = 'ftp://.../whatever';
        //...
        $result = $this->curl_exec($opts);
        // ...
    }    
}
?>

Then: each call to $this->curl_exec() from your whatever-method resets the previous options, reloads the base options, adds in your new options, and returns the result. Otherwise, can also put your base options into a class property, instead of in-method, if there's nothing dynamic being defined. Enjoy. =^_^=
To Top