Community Documentation

image_get_info

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

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 functions call 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.
image_gd_rotate in includes/image.gd.inc
Rotate an image the given number of degrees.
image_scale in includes/image.inc
Scales an image to the given width and height while maintaining aspect ratio.
image_scale_and_crop in includes/image.inc
Scales an image to the exact width and height given. Achieves the target aspect ratio by cropping the original image equally on both sides, or equally on the top and bottom. This function is, for example, useful to create uniform sized avatars from…
user_file_download in modules/user/user.module
Implementation of hook_file_download().
user_validate_picture in modules/user/user.module

File

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

Code

<?php
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;
}
?>
Login or register to post comments