function image_get_info

You are here

7 image.inc image_get_info($filepath, $toolkit = FALSE)
4.6 image.inc image_get_info($file)
4.7 image.inc image_get_info($file)
5 image.inc image_get_info($file)
6 image.inc image_get_info($file)

Get details about an image.

Drupal only supports GIF, JPG and PNG file formats.

Return value

FALSE, if the file could not be found or is not an image. Otherwise, a keyed array containing information about the image: 'width' - Width in pixels. 'height' - Height in pixels. 'extension' - Commonly used file extension for the image. 'mime_type' - MIME type ('image/jpeg', 'image/gif', 'image/png'). 'file_size' - File size in bytes.

Related topics

10 calls to image_get_info()
file_validate_image_resolution in includes/file.inc
If the file is an image verify that its dimensions are within the specified maximum and minimum dimensions. Non-image files will be ignored.
file_validate_is_image in includes/file.inc
Check that the file is recognized by image_get_info() as an image.
hook_prepare in developer/hooks/node.php
This is a hook used by node modules. It is called after load but before the node is shown on the add/edit form.
image_gd_crop in includes/image.gd.inc
Crop an image using the GD toolkit.
image_gd_resize in includes/image.gd.inc
Scale an image to the specified size using GD.

... See full list

File

includes/image.inc, line 115
API for manipulating images.

Code

function image_get_info($file) {
  // Proceed no further if this file doesn't exist. Some web servers (IIS) may
  // not pass is_file() for newly uploaded files, so we need two checks here.
  if (!is_file($file) && !is_uploaded_file($file)) {
    return FALSE;
  }

  $details = FALSE;
  $data = @getimagesize($file);
  $file_size = @filesize($file);

  if (isset($data) && is_array($data)) {
    $extensions = array(
      '1' => 'gif',
      '2' => 'jpg',
      '3' => 'png',
    );
    $extension = array_key_exists($data[2], $extensions) ? $extensions[$data[2]] : '';
    $details = array(
      'width' => $data[0],
      'height' => $data[1],
      'extension' => $extension,
      'file_size' => $file_size,
      'mime_type' => $data['mime'],
    );
  }

  return $details;
}