Új hozzászólás Aktív témák

  • Sk8erPeter

    nagyúr

    válasz Lacces #10560 üzenetére

    Azért nem működik, mert be kell tenned még ezt:

    // This will make cURL follow the redirects (@see http://stackoverflow.com/questions/6028050/curl-returntransfer-is-empty-curl-getinfo-error-1)
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

    Lásd ezt.

    Tehát a teljes függvény:

    /**
    * Download a website or any other file using cURL
    *
    * @see http://www.jonasjohn.de/snippets/php/curl-example.htm
    * @see http://stackoverflow.com/questions/6028050/curl-returntransfer-is-empty-curl-getinfo-error-1
    *
    * @param string $Url
    * @return string
    */
    function curl_download($Url){

    // is cURL installed yet?
    if (!function_exists('curl_init')){
    die('Sorry cURL is not installed!');
    }

    // OK cool - then let's create a new cURL resource handle
    $ch = curl_init();

    // Now set some options (most are optional)

    // Set URL to download
    curl_setopt($ch, CURLOPT_URL, $Url);

    // This will make cURL follow the redirects (@see http://stackoverflow.com/questions/6028050/curl-returntransfer-is-empty-curl-getinfo-error-1)
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

    // Set a referer
    curl_setopt($ch, CURLOPT_REFERER, "http://www.example.org/yay.htm");

    // User agent
    curl_setopt($ch, CURLOPT_USERAGENT, "MozillaXYZ/1.0");

    // Include header in result? (0 = yes, 1 = no)
    curl_setopt($ch, CURLOPT_HEADER, 0);

    // Should cURL return or print out the data? (true = return, false = print)
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    // Timeout in seconds
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);

    // Download the given URL, and return output
    $output = curl_exec($ch);

    // Close the cURL resource, and free system resources
    curl_close($ch);

    return $output;
    }

    Teszt:

    $curl_download = curl_download('http://www.example.org/');

    echo $curl_download;

Új hozzászólás Aktív témák