Overview
KB
Technical FAQ
PHP Manual
CSS2 Manual
HTML Manual
JS Guide
JS Reference
PhpDock Manual
Nu-Coder Manual
PhpExpress Manual
PHP Joomla
Development
Learn PHP
 
<exif_tagnameread_exif_data>
^Exif FunctionsLast updated: Mon, 26 Oct 2026

exif_thumbnail

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

exif_thumbnail — Retrieve the embedded thumbnail of an image

Description

function exif_thumbnail(
    resource|string $file,
    int &$width = null,
    int &$height = null,
    int &$image_type = null
): string|false

exif_thumbnail() reads the embedded thumbnail of an image.

If you want to deliver thumbnails through this function, you should send the mimetype information using the header() function.

It is possible that exif_thumbnail() cannot create an image but can determine its size. In this case, the return value is false but width and height are set.

Parameters

file

The location of the image file. This can either be a path to the file or a stream resource.

width

The return width of the returned thumbnail.

height

The returned height of the returned thumbnail.

image_type

The returned image type of the returned thumbnail. This is either TIFF or JPEG.

Return Values

Returns the embedded thumbnail, or false if the image contains no thumbnail.

Changelog

Version Description
7.2.0 The file parameter now supports both local files and stream resources.

Examples

Example #1 exif_thumbnail() example

<?php
$image = exif_thumbnail('/path/to/image.jpg', $width, $height, $type);

if ($image!==false) {
    header('Content-type: ' .image_type_to_mime_type($type));
    echo $image;
    exit;
} else {
    // no thumbnail available, handle the error here
    echo 'No thumbnail available';
}
?>

Notes

Note:

If the file is used to pass a stream to this function, then the stream must be seekable. Note that the file pointer position is not changed after this function returns.

See Also


<exif_tagnameread_exif_data>
^Exif FunctionsLast updated: Mon, 26 Oct 2026