导航:首页 > 编程语言 > php判断图片格式

php判断图片格式

发布时间:2023-06-17 17:04:20

1. php 验证上传的文件类型为图片,并获得文件的后缀名

以下是我上传了一个图片后显示的 $_FILES['filename']的信息
[filename] => Array
(
[name] => Winter.jpg
[type] => image/jpeg
[tmp_name] => /tmp/php2jw7QX
[error] => 0
[size] => 105542
)
其中type是文件类型的minitype 表示方法,例如普通的HTML的类型是text/html
如果你想用扩展名的方式判断的话可以用以下代码:
<?php
#允许的文件扩展名
$allowed_types = array('jpg', 'gif', 'png');
$filename = $_FILES['filename']['name'];
#正则表达式匹配出上传文件的扩展名
preg_match('|\.(\w+)$|', $filename, $ext);
#print_r($ext);
#转化成小写
$ext = strtolower($ext[1]);
#判断是否在被允许的扩展名里
if(!in_array($ext, $allowed_types)){
die('不被允许的文件类型');
}
?>

2. HTML PHP 中要判断 $_FILES['file']['type'] 为 image 的话则显示预览图片

<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg")){ //如果文件类型为gif、jpeg、pjpeg的话
?>
在这里写上显示图片的代码
<?php }?>

3. Php里面判断一个文件是不是一个真正的图片

好像有一个函数getimagesize,他可以返回指定文件的信息,如果是一张图片他会返回一个数组,可以查一下手册

4. php怎么判断一个url是不是图片

可以分析HTTP头信息中的Content-Type。

php有获取头信息的函数get_headers():

//$url为图片地址
$header=get_headers($url,1);
//$headers['Content-Type']是URL的类型
$type=explode('/',$headers['Content-Type']);
if($type[0]==='image'){
//这是一个图片
}
else{
//这不是一个图片
}

关于get_headers()的具体信息,可以参见:

PHP手册:get_headers():http://php.net/manual/zh/function.get-headers.php

如果要写成一个函数,就是:

functionis_image($url){
$header=get_headers($url,1);
$type=explode('/',$headers['Content-Type']);
if($type[0]==='image'){
//这是一个图片
returnTRUE;
}
else{
//这不是一个图片
returnFALSE;
}
}

这样就可以了。

阅读全文

与php判断图片格式相关的资料

热点内容
如何在中国农业银行app绑定银行卡 浏览:989
shopnum1多用户商城系统源码 浏览:742
红包广告平台源码 浏览:769
硬盘格式化时用的dos命令是 浏览:940
找人缓解压力 浏览:934
iphone的pdf 浏览:347
90压缩饼干怎么吃 浏览:665
php教材下载 浏览:912
什么解压密码最好 浏览:587
数据库与服务器如何连接 浏览:441
架构师需要阅读的源码 浏览:480
ch编译器 浏览:455
java必须自己写一个编译器吗 浏览:943
如何制作androidrom 浏览:475
单片机万能板怎么写入程序 浏览:26
迈锐宝xl压缩比 浏览:345
靠算法买彩票 浏览:502
程序员考核d 浏览:242
自助游中国pdf 浏览:752
安卓p40是什么手机 浏览:92