download file from server php code example

Example 1: Download file from another server in PHP

<?php
    $curl = curl_init();

    // URL to Download File
    $url = "https://wallpapercave.com/wp/wp2663986.png";    
    
    // Get File name from URL ( Last string from url)
    $string = explode('/', $url);
    $last_word = array_pop($string);    

    // Download Path 
    $path = 'images/' . $last_word;  // images folder must already exist.
    $myfile = fopen( $path , 'w+');

    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_FILE, $myfile);

    $data = curl_exec($curl);
    
    if ($data)
      {
        echo "Download Completed <br>";
        echo "Output :  $path <br>";
        echo "File Name :  $last_word <br>";
        echo "URL :  $url <br>" ;
      }
    $err = curl_error($curl);
    echo $err;
    curl_close($curl); 
 ?>

Example 2: php file download from url

Since PHP 5.1.0, file_put_contents() supports writing piece-by-piece by passing a stream-handle as the $data parameter:

file_put_contents("Tmpfile.zip", fopen("http://someurl/file.zip", 'r'));
From the manual:

If data [that is the second argument] is a stream resource, the remaining buffer of that stream will be copied to the specified file. This is similar with using stream_copy_to_stream().

(Thanks Hakre.)

Tags:

Php Example