0

我已经通过 阅读了我的图像路径imagecreatefromstring(),对其进行了处理,但现在我需要输出它,这就是我卡住的地方。

$imgpath = "test.jpg"; //Testing
$img = imagecreatefromstring(file_get_contents($imgpath));

//Do stuff to $img

imagejpeg($img);
imagedestroy($img);

无论类型如何,这都会将图像加载到$img资源变量中。但是,我目前只是用来输出图像,如果源 ( ) 是 jpegimagejpeg()则效果很好。$imgpath但是,如果我更改imagejpegimagepng,服务器必须将 jpeg 转换为 png,这在图像加载时间上非常明显。

由于我永远无法准确地知道通过该函数输入的是什么类型的图像,我如何知道它是什么类型的图像并相应地输出?我试图避免使用文件名检查方法,但如果 GD 无法返回它正在使用的图像类型,我似乎不得不这样做。

谢谢!

4

1 回答 1

1

您可以使用 getimagesize() php 函数来查看您正在处理的图像类型,并据此使用适当的方法。 http://php.net/manual/en/function.getimagesize.php

于 2013-06-26T00:38:45.903 回答