Maison > Article > développement back-end > Introduction à la fonction PHP — curl_multi_getcontent() : récupère le contenu d'une session cURL
Introduction à la fonction PHP—curl_multi_getcontent() : Obtenez le contenu d'une session cURL
Dans le développement PHP, nous avons souvent besoin de demander des données à d'autres serveurs via le réseau. Et cURL (Client URL) est une puissante bibliothèque d'extensions PHP utilisée pour la communication réseau en PHP. cURL fournit une série de fonctions, dont curl_multi_getcontent(), qui est utilisée pour obtenir le contenu d'une session cURL.
La fonction curl_multi_getcontent() est utilisée pour obtenir le contenu de plusieurs sessions cURL créées à l'aide de la fonction curl_multi_init(). Lorsque vous utilisez la fonction curl_multi_exec() pour exécuter plusieurs sessions cURL, nous pouvons utiliser la fonction curl_multi_getcontent() pour obtenir les résultats de retour de chaque session. L'appel à cette fonction est très simple. Il vous suffit de transmettre un handle de ressource cURL en paramètre.
Voici un exemple de code utilisant la fonction curl_multi_getcontent() :
// 初始化cURL会话 $ch1 = curl_init('http://www.example.com/api1'); $ch2 = curl_init('http://www.example.com/api2'); // 创建一个新的cURL多个句柄 $mh = curl_multi_init(); // 将两个会话添加到多个句柄中 curl_multi_add_handle($mh, $ch1); curl_multi_add_handle($mh, $ch2); // 执行多个句柄的cURL会话 do { $status = curl_multi_exec($mh, $active); } while ($status === CURLM_CALL_MULTI_PERFORM || $active); // 循环获取每个会话的内容 $contents = array(); foreach([$ch1, $ch2] as $ch) { $content = curl_multi_getcontent($ch); $contents[] = $content; } // 关闭多个句柄的cURL会话 curl_multi_remove_handle($mh, $ch1); curl_multi_remove_handle($mh, $ch2); curl_multi_close($mh); // 输出获取到的内容 var_dump($contents);
Dans le code ci-dessus, nous avons d'abord initialisé deux sessions cURL à l'aide de la fonction curl_init() et les avons ajoutées à une session cURL multi-handles. Ces sessions ont ensuite été exécutées à l'aide de la fonction curl_multi_exec(). Pendant l'exécution, nous utilisons la fonction curl_multi_getcontent() pour obtenir le contenu de chaque session et enregistrer le contenu dans un tableau. Enfin, utilisez la fonction curl_multi_remove_handle() et la fonction curl_multi_close() pour fermer plusieurs sessions.
Il est à noter qu'avant d'utiliser la fonction curl_multi_getcontent(), il faut d'abord s'assurer que la session a été exécutée, sinon le contenu risque de ne pas être obtenu correctement.
En résumé, la fonction curl_multi_getcontent() est une fonction très utile qui peut être utilisée pour obtenir le contenu de plusieurs sessions cURL. Lorsque vous demandez plusieurs API simultanément, vous pouvez l'utiliser pour obtenir les résultats de retour de chaque session afin de faciliter le traitement ultérieur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!