Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何获取不带';你没有穿衣服吗?_Php_File - Fatal编程技术网

Php 如何获取不带';你没有穿衣服吗?

Php 如何获取不带';你没有穿衣服吗?,php,file,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"]=>

我在目录中有一些图像:
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" } 
返回(除其他信息外)图像的MIME类型。所以使用

var_dump(getimagesize('c:/images/1'));
您将在数组元素
MIME
中获得MIME类型。例如
image/jpeg
image/png

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

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

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

字符串(12)“图像/x图标”


扩展在web上意义不大。浏览器和(web)服务器并不真正使用它们。他们查看mime类型。浏览器会将名为
image.png
的JPEG检测为JPEG。

我以为文件是
1.jpg
不是
1
->
c:/images/1
?!我不知道文件的扩展名,我只知道文件名。那么,您的文件的预期结果是什么
.jpg和.png
?找不到扩展名。唯一的方法是分析二进制文件数据,如果您知道它们是图像的话。但这是一项非常艰巨的任务,因为有很多图像类型。在大多数情况下,图像类型被编码到二进制文件体中,但无论如何,这是一项艰巨的任务。如果像您的示例一样,您同时拥有
1.jpg
1.png
,它会给您带来什么?您可能需要使用类似于
glob
-
glob('C:\Images\1.*')
对于1.jpg和1.png,如何工作
getimagesize('c:/images/1')
?不,不说错误
打开流失败:在中没有这样的文件或目录
如何获得没有扩展名的文件?如果您获得“打开流失败:中没有这样的文件或目录”,则该文件不存在。您的代码中可能有错误。对于您的另一个问题:文件没有“扩展名”,它们有一个MIME类型,该扩展名可以帮助某些操作系统找到正确的MIME类型。如果
getimagesize()
返回的数组的元素
mime
image/jpeg
,那么扩展名应该是
。jpg
如果downvoter能够解释我为什么被否决,那就太好了。您可以尝试使用
var_dump(finfo_文件($finfo,/var/www/favicon')这表示错误如何获取没有扩展名的文件的扩展名?@mhkyazd您无法获取没有扩展名的文件的扩展名。。。明显地你犯了什么错误?将路径更改为您的路径。