PHP Force Download


A force download script in PHP can give you more control over a file download rather than providing a direct link.

Using a force-download script, you can:

  • Validate whether a user is logged in
  • Track total number of download
function force_download( $file, $new_name="filename.doc" )
  $dir = "";
  if ((isset($file))&&(file_exists($dir.$file))) {
    header('Content-type: application/force-download');
    header('Content-Disposition: inline; filename="' . $dir.$file . '"');
    header('Content-Transfer-Encoding: Binary');
    header('Content-length: '.filesize($dir.$file));
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename="'.$new_name.'"');
  } else {
    echo "No file selected";

$file = 'myfile.doc';
$filename = "download";
$original_path = 'path/to/myfile.doc';
$file_new_name = $filename.".".end(explode(".",$original_path));

You will need to validate that the file does not provide access to your code, files you do not want to download, and so on.

For any types of queries, you can contact us on

Leave a Reply

Your email address will not be published. Required fields are marked *