PHP 8.4.2 Released!

curl_multi_setopt

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

curl_multi_setoptcURL çoklu seçeneği tanımlar

Açıklama

curl_multi_setopt(CurlMultiHandle $tanıtıcı, int $seçenek, mixed $değer): bool

cURL çoklu tanıtıcısı üzerinde seçenek tanımlar.

Bağımsız Değişkenler

tanıtıcı

curl_multi_init() işlevinden dönen çoklu cURL tanıtıcısı.

seçenek

CURLMOPT_* sabitlerinden biri.

değer

seçenek için değer.

değer aşağıdaki seçenek bağımsız değişkenleri için birer tamsayı olmalıdır:

Seçenek Değer
CURLMOPT_PIPELINING Etkinleştirmek için 1, devre dışı bırakmak için 0. Çoklu tanıtıcı üzerinde ardışık düzeni etkinleştirmek, bu tanıtıcıyı kullanan aktarımlarda mümkün olduğunca HTTP Ardışık Düzeninin uygulanmaya çalışılmasını sağlar. Mevcut bir bağlantıyı kullanmak üzere ikinci bir istek eklenirse, ikinci isteğin aynı bağlantıda "bağlanacağı" anlamına gelir. cURL 7.43.0'dan itibaren, değer bir bit maskesidir ve mümkünse yeni aktarımı mevcut bir HTTP/2 bağlantısı üzerinden çoğullamayı denemek için 2 değeri aktarılabilir. 3 değeri, cURL'ye birbirinden bağımsız olarak ardışık düzen ve çoğullama istemesi talimatını verir. cURL 7.62.0'dan itibaren, ardışık düzen bitinin ayarlanmasının hiçbir etkisi yoktur. Tamsayı değerler yerine, varsa CURLPIPE_* sabitleri de kullanılabilir.
CURLMOPT_MAXCONNECTS libcurl'un önbelleğe alabileceği azami eşzamanlı açık bağlantı sayısı. Öntanımlı olarak önbellek boyutu, curl_multi_add_handle() aracılığıyla eklenen tanıtıcı sayısının dört katı sığacak kadar büyüktür. Önbellek dolduğunda curl, açık bağlantıların sayısının artmasını önlemek için önbellektekilerin en eskisini kapatır.
CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE Ardışık düzen için yığın uzunluğu eşiğini bayt cinsinden belirten bir sayı.
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE Ardışık düzen cezası için boyut eşiğini bayt cinsinden belirten bir sayı
CURLMOPT_MAX_HOST_CONNECTIONS Tek bir konağa yapılacak azami bağlantı sayısı.
CURLMOPT_MAX_PIPELINE_LENGTH Ardışık işlenecek azami istek sayısı.
CURLMOPT_MAX_CONCURRENT_STREAMS Atanan değer, HTTP/2 kullanılarak yapılan bağlantılarda cURL'nin desteklemesi gereken bağlantılar için azami eşzamanlı akım sayısı olarak kullanılır. Geçerli değerler 1 ila 2147483647 (2^31 - 1) arasındadır. Atanan değer, diğer sistem kaynaklarının özelliklerine göre dikkate alınır. 100 varsayılan değerdir.
CURLMOPT_MAX_TOTAL_CONNECTIONS Aynı anda açık azami bağlantı sayısı.
CURLMOPT_PUSHFUNCTION

Sunucu gönderimlerini işlemek için kaydedilecek yöntemin sözdizimi şöyle olmalıdır:

gönderim_işlevi(resource $ebeveyn_tanıtıcı, resource $gönderilmiş_tanıtıcı, array $başlıklar): int
ebeveyn_tanıtıcı

Ebeveyn cURL tanıtıcısı (istemci yapımı istek).

gönderilmiş_tanıtıcı

Gönderilmiş istek için yeni cURL tanıtıcı.

başlıklar

Sözel gönderim başlıkları.

Gönderim işlevinin, gönderim işlenebilmişse CURL_PUSH_OK, reddedilmişse CURL_PUSH_DENY döndüreceği varsayılır.

Dönen Değerler

Başarı durumunda true, başarısızlık durumunda false döner.

Sürüm Bilgisi

Sürüm: Açıklama
8.2.0 CURLMOPT_MAX_CONCURRENT_STREAMS tanımlandı.
8.0.0çoklu_tanıtıcı artık bir CurlMultiHandle örneği bekliyor; evvelce resource türünde bir değer beklenirdi.
7.1.0 CURLMOPT_PUSHFUNCTION tanımlandı.
7.0.7 CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE, CURLMOPT_MAX_HOST_CONNECTIONS, CURLMOPT_MAX_PIPELINE_LENGTH ve CURLMOPT_MAX_TOTAL_CONNECTIONS sabitleri tanımlandı.

add a note

User Contributed Notes 1 note

up
0
ryosuke_i_628 at yahoo dot co dot jp
8 years ago
If you want to enable both HTTP/1.1 pipelining and HTTP/2 multiplexing...

<?php
curl_multi_setopt
($mh, CURLMOPT_PIPELINING, 3);
?>

or

<?php
curl_multi_setopt
($mh, CURLMOPT_PIPELINING, CURLPIPE_HTTP1 | CURLPIPE_MULTIPLEX);
?>
To Top