This example doesn't work for the files that have been incorrectly saved or corrupted and have (jpg extension but the image is png)
(PECL imagick 2, PECL imagick 3)
Imagick::getFormat — Returns the format of the Imagick object
Returns the format of the Imagick object.
此函数没有参数。
Returns the format of the image.
错误时抛出 ImagickException。
This example doesn't work for the files that have been incorrectly saved or corrupted and have (jpg extension but the image is png)
The getFormat function merely returns the value of the image format, which is not automatically loaded when you read an image. The value you're getting back, then, is merely the value that you set the format to using the setFormat function. That function takes pretty much any string that matches a popular or well-known image filename. It accepts "jpeg" and "gif", but errors out on anything that is not an image filename, like "xyz123" or "zip". How do you know what filetypes you can enter? Use the PHP ImageMagick function 'queryFormats'. If you want to know what type of file you have, you should try using the PHP page for the function 'filetype'. Or, on the other hand, you can use the ImageMagick function getImageFormat (as opposed to the ImageMagick function getFormat). The difference is that getImageFormat actually returns the format of the inputted image.
And now, a simple demonstration of the set/get activity in the Format :
<?php
// Author: [email protected]
// Imagick Type
// ---------------------------------------------
$imagick_type = new Imagick();
// Open File
// ---------------------------------------------
$file_to_grab = "image_workshop_directory/test.bmp";
$file_handle_for_viewing_image_file = fopen($file_to_grab, 'a+');
// Grab File
// ---------------------------------------------
$imagick_type->readImageFile($file_handle_for_viewing_image_file);
// Set/Get Format
// ---------------------------------------------
$imagick_type->setFormat("bmp");
$imagick_type_format = $imagick_type->getFormat();
// Print Results
// ---------------------------------------------
print("<pre>");
print($imagick_type_format);
print("</pre>");
?>