Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

curl_multi_info_read

cURL Funktionen

    Befehl:
array curl_multi_info_read ( resource $mh [, int &$msgs_in_queue = NULL ] )


    Parameter-Liste:
NameBeschreibung
mhEin von curl_multi_init() zurückgegebenes cURL-Multihandle.
still_runningEine Referenz auf ein Flag um festzustellen, ob auf einem oder mehreren Handles noch gearbeitet wird.
msgs_in_queueAnzahl der verbleibenden Informationen

    Rückgabewerte:
Gibt im Erfolgfall ein assoziatives Array zurück, andernfalls FALSE.
Inhalt des zurückgegebenen Arrays
Key:Value:
msgDie Konstante CURLMSG_DONE. Andere Rückgabewerte sind derzeit nicht verfügbar.
resultEine der CURLE_*-Konstanten. Wenn kein Fehler auftrat ist das Ergebnis CURLE_OK.
handleDie entsprechende Resource vom Typ curl.

    Beschreibung:
Ruft Informationen oder Nachrichten der einzelnen Transfers ab sofern vorhanden. Dabei kann es sich beispielsweise um Fehlercodes handeln, aber auch schlicht um die Information, dass ein Transfer abgeschlossen ist.

Wiederholte Aufrufe dieser Funktion liefern immer ein neues Ergebnis, bis durch die Rückgabe von FALSE signalisiert wird dass keine weiteren Informationen verfügbar sind. Der Parameter msgs_in_queue enthält die Anzahl der Informationen die nach Aufruf der Funktion verbleiben.
Warnung:
Mit dem Aufruf von curl_multi_remove_handle() werden diese Daten gelöscht.


    Aktiv in Version:
(PHP 5, PHP 7)

    Siehe auch:
Gibt einen cURL-Multi-Handle zurück
 

curl_multi_info_read() - Beispiel:


Eingabe:
<?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);
    $info = curl_multi_info_read($mh);
    if (false !== $info) {
        var_dump($info);
    }
} while ($status === CURLM_CALL_MULTI_PERFORM || $active);

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

var_dump(curl_multi_info_read($mh));
?>


Ausgabe:
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)

Beschreibung:
Version Beschreibung
5.2.0 msgs_in_queue wurde hinzugefügt.
cURL Funktionen