Im not a smart man but this seemd to be the simplest code and it worked.
Its at the very top of this directory.
<?php
var_dump(gd_info());
?>
Returned image info and more.
array(11) { ["GD Version"]=> string(27) "bundled (2.0.28 compatible)" ["FreeType Support"]=> bool(true) ["FreeType Linkage"]=> string(13) "with freetype" ["T1Lib Support"]=> bool(false) ["GIF Read Support"]=> bool(true) ["GIF Create Support"]=> bool(true) ["JPG Support"]=> bool(true) ["PNG Support"]=> bool(true) ["WBMP Support"]=> bool(true) ["XBM Support"]=> bool(true) ["JIS-mapped Japanese Font Support"]=> bool(false) }
imagetypes
(PHP 4 >= 4.0.2, PHP 5)
imagetypes — Retourne les types d'images supportés par la version courante de PHP
Description
int imagetypes
( void
)
Retourne un champ d'octets correspondant aux formats d'images supportés par la version PHP utilisée.
Valeurs de retour
Retourne un champ d'octets correspondant aux formats d'images supportés par la version de GD utilisée. Les valeurs suivantes sont possibles : IMG_GIF | IMG_JPG | IMG_PNG | IMG_WBMP | IMG_XPM.
Exemples
Exemple #1 Exemple avec imagetypes()
<?php
if (imagetypes() & IMG_PNG) {
echo "Le type PNG est supporté";
}
?>
imagetypes
ThunderCrew
31-Jul-2007 02:38
31-Jul-2007 02:38
enyo
06-Nov-2003 03:32
06-Nov-2003 03:32
Why not use this function?
<?php
function getSupportedImageTypes() {
$aSupportedTypes = array();
$aPossibleImageTypeBits = array(
IMG_GIF=>'GIF',
IMG_JPG=>'JPG',
IMG_PNG=>'PNG',
IMG_WBMP=>'WBMP'
);
foreach ($aPossibleImageTypeBits as $iImageTypeBits => $sImageTypeString) {
if (imagetypes() & $iImageTypeBits) {
$aSupportedTypes[] = $sImageTypeString;
}
}
return $aSupportedTypes;
}
?>
jocke at selincite dot IHATESP4M dot com
16-Oct-2003 09:56
16-Oct-2003 09:56
I wrote this function that returns an array with the supported image types
<?php
function getSupportedImageTypes() {
$aSupportedTypes = array();
$aPossibleImageTypeBits = array(
"IMG_GIF",
"IMG_JPG",
"IMG_PNG",
"IMG_WBMP"
);
foreach ($aPossibleImageTypeBits as $iIndex => $sImageTypeBits) {
$sEval = "if (";
$sEval .= "imagetypes() & " . $sImageTypeBits . "";
$sEval .= ") { return TRUE; } else { return FALSE; }";
if (eval($sEval)) {
$aSupportedTypes[] = str_replace("IMG_", "", $sImageTypeBits);
}
}
return $aSupportedTypes;
}
?>
Hope that helps someone :)
/Jocke Selin
PS, if you know of a better way that doesn't include eval(), please let me know.
jaldinger (at) consulturdorado (dot) com
08-Jan-2003 08:31
08-Jan-2003 08:31
Please note that if only "GIF Read Support" is enabled, the
IMG_GIF bit will not be returned (at least on my system:
PHP 4.3.0/RH Linux 7.2).
To work around this issue, and also the issue that there is no
function that can tell me what image format a GD resource ID
refers to, I use the following switch statement to map the exif
IMAGETYPE_* constants to the GD IMG_* constants:
switch (exif_imagetype($file['tmp_name'])) {
case IMAGETYPE_GIF:
$image_type = IMG_GIF;
break;
case IMAGETYPE_JPEG:
$image_type = IMG_JPG;
break;
case IMAGETYPE_PNG:
$image_type = IMG_PNG;
break;
case IMAGETYPE_WBMP:
$image_type = IMG_WBMP;
break;
default:
$image_type = 0;
break;
}
store this value together with the image data in a database
and later use the following IF statement to see if I can work
with that image (create a thumbnail, etc...)
if ($image_type & (imagetypes() | IMG_GIF)) {
return $this->createJpegThumbailFromString($data, 46, 27);
} else {
return file_get_contents($_SERVER['DOCUMENT_ROOT'] .
'/gfx/no-thumbnail.jpg');
}
HTH anybody...
Joerg.
