file_get_content_headers

  1. drupal
    1. 8
    2. 7
Versions
8 – 7 file_get_content_headers($file)

Examines a file object and returns appropriate content headers for download.

Parameters

$file A file object.

Return value

An associative array of headers, as expected by file_transfer().

Related topics

Code

includes/file.inc, line 2438

<?php
function file_get_content_headers($file) {
  $name = mime_header_encode($file->filename);
  $type = mime_header_encode($file->filemime);
  // Serve images, text, and flash content for display rather than download.
  $inline_types = variable_get('file_inline_types', array('^text/', '^image/', 'flash$'));
  $disposition = 'attachment';
  foreach ($inline_types as $inline_type) {
    // Exclamation marks are used as delimiters to avoid escaping slashes.
    if (preg_match('!' . $inline_type . '!', $file->filemime)) {
      $disposition = 'inline';
    }
  }

  return array(
    'Content-Type' => $type . '; name="' . $name . '"', 
    'Content-Length' => $file->filesize, 
    'Content-Disposition' => $disposition . '; filename="' . $name . '"', 
    'Cache-Control' => 'private',
  );
}
?>