CakeFest 2024: The Official CakePHP Conference

curl_multi_info_read

(PHP 5, PHP 7, PHP 8)

curl_multi_info_readGeçerli oturum hakkında bilgi döndürür

Açıklama

curl_multi_info_read(CurlMultiHandle $çoklu_tanıtıcı, int &$iletiler = null): array|false

Çoklu tanıtıcıyı aktarımlardan dönen bilgi veya iletiler bakımından sorgular. İletiler aktarımdaki veya aktarım tamamlandığı andaki bir hata kodu gibi bir bilgi içerebilir.

Bu işleve yapılan her yeni çağrı false dönmedikçe yeni bir sonuç döndürür. false alınacak bilgi kalmadığı anlamına gelir. iletiler bağımsız değişkeni işlev çağrısından sonra kalan iletilerin sayısını içerir.

Uyarı

Dönen özkaynağın gösterdiği veri curl_multi_remove_handle() çağrılıncaya kadar tutulur.

Bağımsız Değişkenler

tanıtıcı

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

iletiler

Kuyrukta bekleyen iletilerin sayısı.

Dönen Değerler

Başarı durumunda ileti için bir ilişkili dizi yoksa false döner.

Dönen dizinin içeriği
Anahtar: Değer:
msg CURLMSG_DONE sabiti. Diğer dönüş değerleri kullanılabilir değil.
result CURLE_* sabitlerinden biri. Herşey tamamsa, sonuç CURLE_OKolur.
handle Curl türünün özkaynağı, ilgili tanıtıcıyı gösterir.

Sürüm Bilgisi

Sürüm: Açıklama
8.0.0çoklu_tanıtıcı artık bir CurlMultiHandle örneği bekliyor; evvelce resource türünde bir değer beklenirdi.

Örnekler

Örnek 1 - curl_multi_info_read() örneği

<?php

$urls
= array(
"http://www.cnn.com/",
"http://www.bbc.co.uk/",
"http://www.yahoo.com/"
);

$mh = curl_multi_init();

foreach (
$urls as $i => $url) {
$conn[$i] = curl_init($url);
curl_setopt($conn[$i], CURLOPT_RETURNTRANSFER, 1);
curl_multi_add_handle($mh, $conn[$i]);
}

do {
$status = curl_multi_exec($mh, $active);
if (
$active) {
curl_multi_select($mh);
}
while (
false !== ($info = curl_multi_info_read($mh))) {
var_dump($info);
}
} while (
$active && $status == CURLM_OK);

foreach (
$urls as $i => $url) {
$res[$i] = curl_multi_getcontent($conn[$i]);
curl_close($conn[$i]);
}

var_dump(curl_multi_info_read($mh));

?>

Yukarıdaki örnek şuna benzer bir çıktı üretir:

array(3) {
  ["msg"]=>
  int(1)
  ["result"]=>
  int(0)
  ["handle"]=>
  resource(5) of type (curl)
}
array(3) {
  ["msg"]=>
  int(1)
  ["result"]=>
  int(0)
  ["handle"]=>
  resource(7) of type (curl)
}
array(3) {
  ["msg"]=>
  int(1)
  ["result"]=>
  int(0)
  ["handle"]=>
  resource(6) of type (curl)
}
bool(false)

Ayrıca Bakınız

add a note

User Contributed Notes 1 note

up
-2
Nick Smith
13 years ago
Just to let others who might be struggling to get it to work, curl_multi_info_read() doesn't work in PHP versions before 5.2.0, and instead returns NULL immediately.
To Top