>백엔드 개발 >PHP 튜토리얼 >업로드된 이미지의 형식을 제한하는 방법은 무엇입니까?

업로드된 이미지의 형식을 제한하는 방법은 무엇입니까?

WBOY
WBOY원래의
2016-09-12 17:44:491101검색

업로드되는 파일은 사진만 가능하다고 규정되어 있는데, 다른 파일이라면 업로드가 불가능합니다.

<code>if($_SERVER['REQUEST_METHOD']=='POST'){
  if(is_uploaded_file($_FILES['up']['tmp_name'])){
    $path='./upload/';
    is_dir($path) || mkdir($path,0777,true);
    $type=ltrim(strchr($_FILES['up']['type'],'/'),'/');
    $fileName = time().mt_rand(0, 9999).'.'.$type;
    $fullpath = $path . $fileName;
    move_uploaded_file($_FILES['up']['tmp_name'], $fullpath);
  }
}</code>

답글 내용:

업로드되는 파일은 사진만 가능하다고 규정되어 있는데, 다른 파일이라면 업로드가 불가능합니다.

<code>if($_SERVER['REQUEST_METHOD']=='POST'){
  if(is_uploaded_file($_FILES['up']['tmp_name'])){
    $path='./upload/';
    is_dir($path) || mkdir($path,0777,true);
    $type=ltrim(strchr($_FILES['up']['type'],'/'),'/');
    $fileName = time().mt_rand(0, 9999).'.'.$type;
    $fullpath = $path . $fileName;
    move_uploaded_file($_FILES['up']['tmp_name'], $fullpath);
  }
}</code>

<code><?php

//可以上传的类型
$arr_file_type = ['image/gif'];
//如果上传的类型 不在配置的类型数组里面
if(!in_array($_FILES['fileName']['type'],$arr_file_type))
{
    $msg ='文件类型有误!';
    return false;
}

</code>

  1. 연장으로 판단하면 위험성은 있습니다

  2. MIME 유형으로 판단

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