Ler url externa em php - biblioteca cURL



:. Existem vários processos para ler uma URL externa em PHP: A função fopen(), a função fsockopen(), a função file_get_contents a biblioteca cURL e usando a classe HTTP_Request. .:



Existem vários processos para ler uma URL externa em PHP: A função fopen(), a função fsockopen(), a função file_get_contents a biblioteca cURL e usando a classe HTTP_Request. Cada um destes processos tem a sua sintaxe e instruções diferentes. Vamos, neste caso, ver um exemplo da utilização da cURL.


function curl_grab_page($url,$ref_url,$data,$login,$proxy,$proxystatus){
    if($login == "true") {
        $fp = fopen("cookie.txt", "w");
        fclose($fp);
    }
 $header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,";
 $header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
 $header[] = "Cache-Control: max-age=0";
 $header[] = "Connection: keep-alive";
 $header[] = "Keep-Alive: 300";
 $header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
 $header[] = "Accept-Language: en-us,en;q=0.5";
 $header[] = "Pragma: ";
 
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");
    curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
    curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
  curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    curl_setopt($ch, CURLOPT_TIMEOUT, 40);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
    if ($proxystatus == "true") {
        curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE);
        curl_setopt($ch, CURLOPT_PROXY, $proxy);
    }
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_REFERER, $ref_url);
 
    curl_setopt($ch, CURLOPT_HEADER, true);
 
    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER["HTTP_USER_AGENT"]);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
    curl_setopt($ch, CURLOPT_POST, false);
   // curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    ob_start();
    return curl_exec ($ch); // execute the curl command
    ob_end_clean();
    curl_close ($ch);
    unset($ch);
}
$href = "http://www.sitex.com/artigos";
$href_r = "http://www.sitex.com";
echo curl_grab_page($href, $href_r, "", "true",  "null", "false");

Autor: Luís Filipe
Data: 2013-02-28


Contato: mail@artigosenoticias.com   |   SAPO MAIL   |   HOTMAIL  |   GMAIL