function image_get_info

Gets details about an image.

Drupal supports GIF, JPG and PNG file formats when used with the GD toolkit, and may support others, depending on which toolkits are installed.

Parameters

$filepath: String specifying the path of the image file.

$toolkit: An optional image toolkit name to override the default.

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

23 calls to image_get_info()
FileValidatorTest::testFileValidateImageResolution in drupal/modules/simpletest/tests/file.test
This ensures the resolution of a specific file is within bounds. The image will be resized if it's too large.
file_validate_image_resolution in drupal/includes/file.inc
Verifies that image dimensions are within the specified maximum and minimum.
file_validate_is_image in drupal/includes/file.inc
Checks that the file is recognized by image_get_info() as an image.
hook_file_download in drupal/modules/system/system.api.php
Control access to private file downloads and specify HTTP headers.
ImageDimensionsTestCase::testImageDimensions in drupal/modules/image/image.test
Test styled image dimensions cumulatively.

... See full list

File

drupal/includes/image.inc, line 124
API for manipulating images.

Code

function image_get_info($filepath, $toolkit = FALSE) {
  $details = FALSE;
  if (!is_file($filepath) && !is_uploaded_file($filepath)) {
    return $details;
  }
  if (!$toolkit) {
    $toolkit = image_get_toolkit();
  }
  if ($toolkit) {
    $image = new stdClass();
    $image->source = $filepath;
    $image->toolkit = $toolkit;
    $details = image_toolkit_invoke('get_info', $image);
    if (isset($details) && is_array($details)) {
      $details['file_size'] = filesize($filepath);
    }
  }
  return $details;
}