curl_multi_exec

(PHP 5)

curl_multi_exec — Exécute les sous-requêtes de la session cURL

Description

int curl_multi_exec ( resource $mh, int &$still_running )

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.

Liste de paramètres

mh

Un gestionnaire cURL multiple retourné par la fonction curl_multi_init() .

still_running

Une référence à un drapeau, qui annonce si les opérations sont toujours en cours.

Valeurs de retour

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 .

Exemples

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 );

?>

Voir aussi

curl_multi_init()
curl_exec()