如何获取没有的文件的扩展名?

时间:2015-04-19 13:46:32

标签: php file

我在目录中有一些图片:c:/images/。例如:

  • 1.JPG
  • 1.png
  • 2.gif
  • 3.JPG

我只有图片名称没有扩展程序,我知道c:/images/中存在一些图像,其名称如下:1, 2, 3, ...我不知道这些图片的扩展名。

如何获得没有文件扩展名的文件?

我试图使用:

var_dump(pathinfo ('c:/images/1'));

但这只会返回:

array(3) { ["dirname"]=> string(3) "c:\images\" ["basename"]=> string(1) "1" ["filename"]=> string(1) "1" } 

2 个答案:

答案 0 :(得分:1)

getimagesize()返回(除了其他信息)图像的MIME类型。所以使用

var_dump(getimagesize('c:/images/1'));

您将获得数组元素mime中的MIME类型。例如。 image/jpegimage/png

还有更快的资金exif_imagetype(),但此函数只返回MIME类型的整数。可以在PHP手册中找到将可能的返回值与图像类型匹配的表。

答案 1 :(得分:0)

如果有,finfo_file()可以返回文件的mime类型:

$finfo = finfo_open(FILEINFO_MIME_TYPE);
var_dump(finfo_file($finfo, '/var/www/favicon.ico'));

将打印:

  

string(12)" image / x-icon"

扩展在网络上并不重要。浏览器和(网络)服务器并不真正使用它们。他们看着哑剧类型。浏览器会将名为image.png的JPEG检测为JPEG。