downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

curl_multi_remove_handle> <curl_multi_info_read
Last updated: Fri, 20 May 2011

view this page in

curl_multi_init

(PHP 5)

curl_multi_initDevuelve un nuevo multi recurso cURL

Descripción

resource curl_multi_init ( void )

Permite procesar múltiples recursos cURL en paralelo.

Parámetros

Esta función no tiene parámetros.

Valores devueltos

Devuelve un multi recurso cURL si funciona, FALSE si falla.

Ejemplos

Example #1 curl_multi_init() example

Este ejemplo crea dos recursos cURL, los añade a un multi recurso, y los ejectua en paralelo.

<?php
// Crea dos recursos cURL
$ch1 curl_init();
$ch2 curl_init();

// Establece la URL y otras opciones apropiadas 
curl_setopt($ch1CURLOPT_URL"http://www.example.com/");
curl_setopt($ch1CURLOPT_HEADER0);
curl_setopt($ch2CURLOPT_URL"http://www.php.net/");
curl_setopt($ch2CURLOPT_HEADER0);

// Crea el multi recurso cURL
$mh curl_multi_init();

// Añade los dos recursos
curl_multi_add_handle($mh,$ch1);
curl_multi_add_handle($mh,$ch2);

$running=null;
// Ejecuta los recursos
do {
    
usleep(10000);
    
curl_multi_exec($mh,$running);
} while (
$running 0);

// Cierra los recursos
curl_multi_remove_handle($mh$ch1);
curl_multi_remove_handle($mh$ch2);
curl_multi_close($mh);

?>

Ver también



curl_multi_remove_handle> <curl_multi_info_read
Last updated: Fri, 20 May 2011
 
add a note add a note User Contributed Notes curl_multi_init
jaisen at jmathai dot com 30-May-2008 07:09
http://github.com/jmathai/epicode/tree/master/php/EpiCurl.php

If you fire off 10 curl requests in parallel you don't have to wait for all of them to be finished before accessing one which is already finished.
Anonymous 25-Jan-2008 06:09
In the example above, rather than busy looping, curl_multi_select() should be used.  The call isn't adequately described in the php documentation, so you need to look at the libcurl-multi man page.  curl_multi_fdset() on this page is  curl_multi_select() here, and curl_multi_perform() is curl_multi_exec() here.  Read on and write better code.
php at twobears dot cz 17-Dec-2007 06:02
It's not good to use plain while cycle like in the example because you are going to consume all the cpu time just by checking if you are not done. E.g. using usleep(50) in the middle of while could solve that gracefully...
snoyes at gmail dot com 30-Jul-2007 02:39
In the example shown, the calls to curl_multi_remove_handle() should include the resource as the first parameter:

curl_multi_remove_handle($mh, $ch1);
curl_multi_remove_handle($mh, $ch2);

 
show source | credits | stats | sitemap | contact | advertising | mirror sites