php验证上传文件类型

在WEB应用中文件上传是系统不可少的功能,同时也存在很大安全隐患的地方,如果你没作限制就可以上传动态文件php,asp,jsp等,这样就对你的系统产生的特大的影响,下面我们来做二个验证上传文件类型.

第一种,代码如下:

  1. function ($file_name,$pass_type=array('jpg','jpeg','gif','bmp','png')){
  2. $yx_file = $pass_type;
  3. $kzm = substr(strrchr($file_name,"."),1);
  4. $is_img = in_array(strtolower($kzm),$yx_file);
  5. if($is_img){ //开源代码phpfensi.com
  6. return true;
  7. }else{
  8. return false;
  9. }
  10. }

第二种,用getimagesize函数实例,这个相对比上面一个安全一些,代码如下:

  1. <?php
  2. list($width, $height, $type, $attr) = getimagesize("img/flag.jpg");
  3. if( strtolowerr$type !='gif' )
  4. {
  5. die('图片类型不对');
  6. }
  7. echo "<img src="img/flag.jpg" $attr alt="getimagesize() example" />";
  8. ?>