Пределать fopen в cURL

Тема в разделе "Как сделать...", создана пользователем nixxx, 6 май 2008.

Статус темы:
Закрыта.
  1. nixxx

    nixxx Постоялец

    Регистр.:
    25 ноя 2006
    Сообщения:
    84
    Симпатии:
    46
    Хостер разрешает исходящие соединения только через cURL. Помогите переделать код:

    PHP:
    $xml "";
        
    $handle fopen($apicall"r");
        if (!
    $handle) return '';
        while (!
    feof($handle)){
            
    $xml .= fread($handle8192);
        }
        
    fclose($handle);
     
        if(isset(
    $xml['FindItemsAdvancedResponse']['Errors']))
            return 
    "";
        
    //prnx($xml);
        
    return $xml;
    }
    Будет ли скрипт работать медленнее или больше грузить сервер?
     
  2. alexzh

    alexzh

    Регистр.:
    13 сен 2006
    Сообщения:
    222
    Симпатии:
    88
    PHP:
        $ch curl_init();
        
    curl_setopt($chCURLOPT_URL$url); 
        
    curl_setopt($chCURLOPT_USERAGENT"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)");
        
    curl_setopt($chCURLOPT_RETURNTRANSFER1);
        
    curl_setopt($chCURLOPT_TIMEOUT120);
        
    $xml=curl_exec($ch);
        
    curl_close($ch);
     
        if(isset(
    $xml['FindItemsAdvancedResponse']['Errors']))
            return 
    "";
        
    //prnx($xml);
        
    return $xml;
    }
    только $url вставь что там у тебя
     
    nixxx нравится это.
  3. Dimkich

    Dimkich Постоялец

    Регистр.:
    10 июл 2007
    Сообщения:
    119
    Симпатии:
    36
    Думаю такое пойдёт
    PHP:
    $xml "";
        
    $ch curl_init();
        
    curl_setopt($chCURLOPT_URL$apicall);
        
    curl_setopt($chCURLOPT_RETURNTRANSFER1);
        
    curl_setopt($chCURLOPT_FOLLOWLOCATION1);
        
    $xml=curl_exec($ch);
        
    curl_close($ch); 
        if(isset(
    $xml['FindItemsAdvancedResponse']['Errors']))
            return 
    "";
        
    //prnx($xml);
        
    return $xml;
    }  
    оппа...
    думаю одни пост можно удалить
     
    nixxx нравится это.
  4. nixxx

    nixxx Постоялец

    Регистр.:
    25 ноя 2006
    Сообщения:
    84
    Симпатии:
    46
    Да, теперь всё заработало. А как насчет нагрузки на сервер?
     
  5. Toxic_Cat

    Toxic_Cat Постоялец

    Регистр.:
    19 авг 2007
    Сообщения:
    128
    Симпатии:
    6
    Курл - библиотека, работает быстро, нагрузок не даст ;)
     
  6. alexzh

    alexzh

    Регистр.:
    13 сен 2006
    Сообщения:
    222
    Симпатии:
    88
    нагрузку не даст большую, как впринципе и большинство функций. Дело в том как их использовать, если открывать много соединений и потом обрабатывать результат каким нибудь извращенным способом, да и еще в базу писать паралельно, то нагрузка может быть приличной....
     
Статус темы:
Закрыта.