(PHP 5)
curl_multi_exec — Exécute les sous-requêtes de la session cURL
Exécute chaque gestionnaire de la pile. Cette méthode peut être appelée même si un gestionnaire à besoin de lire ou d'écrire des données.
Un gestionnaire cURL multiple retourné par la fonction curl_multi_init() .
Une référence à un drapeau, qui annonce si les opérations sont toujours en cours.
Un code cURL, défini dans les constantes prédéfinies cURL.
Note: Cette fonction retourne que des erreurs au regard de la pile. Des problèmes suiviennent toujours sur des transferts individuels même lorsque cette fonction retourne CURLM_OK .
Exemple 577. Exemple avec curl_multi_exec()
Cet exemple crée deux gestionnaires cURL, les ajoute à un gestionnaire multiple, et les exécute en parallèle.
<?php
// Création des ressources cURL
$ch1
=
curl_init
();
$ch2
=
curl_init
();
// Définit l'URL ainsi que d'autres options
curl_setopt
(
$ch1
,
CURLOPT_URL
,
"http://www.example.com/"
);
curl_setopt
(
$ch1
,
CURLOPT_HEADER
,
0
);
curl_setopt
(
$ch2
,
CURLOPT_URL
,
"http://www.php.net/"
);
curl_setopt
(
$ch2
,
CURLOPT_HEADER
,
0
);
// Création du gestionnaire multiple
$mh
=
curl_multi_init
();
// Ajoute les deux gestionnaires
curl_multi_add_handle
(
$mh
,
$ch1
);
curl_multi_add_handle
(
$mh
,
$ch2
);
$running
=
null
;
// Exécute le gestionnaire
do {
curl_multi_exec
(
$mh
,
$running
);
} while (
$running
>
0
);
// Ferme les gestionnaires
curl_multi_remove_handle
(
$ch1
);
curl_multi_remove_handle
(
$ch2
);
curl_multi_close
(
$mh
);
?>
curl_multi_init() |
curl_exec() |