>  기사  >  백엔드 개발  >  PHP에서 업로드된 파일의 파일 형식을 결정하는 여러 가지 방법

PHP에서 업로드된 파일의 파일 형식을 결정하는 여러 가지 방법

WBOY
WBOY원래의
2016-07-25 09:04:352408검색
  1. /**

  2. desc:判断上传文件类型
  3. link:bbs.it-home.org
  4. date:2013/2/24
  5. */
  6. $array = array('jpg','gif','png','jpeg');
  7. $picImg ='/upfile/upload_pic/thumbnail_1258615556.jpg';

  8. $img = strtolower($picImg);

  9. //获取文件件扩展名方法一

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

  11. //获取文件件扩展名方法二

  12. $ext = end(explode('.',$img));

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

  14. $ext = $_FILES['file']['type'];

  15. //获取文件件扩展名方法四

  16. $ext = getimagesize($img);//这个函数返回一个数组

  17. if( !in_array( $ext,$array ) )

  18. {
  19. exit('缩略图地址错误,请重新上传!');
  20. }
  21. else
  22. {
  23. echo('你上传的文件类型不允许');
  24. exit;
  25. }

  26. /*

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

复制代码


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.