php判断上传文件的文件类型的几种方法

发布时间:2019-08-04编辑:脚本学堂
php判断上传文件的文件类型的几种方法,供大家参考。

完整代码。
 

复制代码 代码如下:

<?php
/**
  desc:判断上传文件类型
  link:www.jb200.com
  date:2013/2/24
*/
$array = array('jpg','gif','png','jpeg');
$picImg ='/upfile/upload_pic/thumbnail_1258615556.jpg';

$img = strtolower($picImg);

//获取文件件扩展名方法一
$ext = substr($img,strrpos($img,'.')+1);//这里是读取文件扩展名的代码

//获取文件件扩展名方法二
$ext = end(explode('.',$img));

//获取文件件扩展名方法三 这是应该是最安全的了,就是用php $_FILES['type']
$ext = $_FILES['file']['type'];

//获取文件件扩展名方法四
$ext = getimagesize($img);//这个函数返回一个数组

if( !in_array( $ext,$array ) )
{
 exit('缩略图地址错误,请重新上传!');
}
else
{
 echo('你上传的文件类型不允许');
 exit;
}

/*
  strtolower 把字符大字转换成小写
  substr 字符截取,对中文处理不友好。
  strrpos 判断字符出现在指定字符串中的位置
  explode 分割函数,返回结果为数组
  end 读取数据最后一个值
  $_FILES 全局变量文件上传
  getimagesize  获取图片的类型
  in_array 判断当变量是否在数组中
  exit 终止当前脚本运行
*/
?>