>백엔드 개발 >PHP 튜토리얼 >파일을 승인하고 접미사 이름을 얻는 PHP 메소드

파일을 승인하고 접미사 이름을 얻는 PHP 메소드

墨辰丷
墨辰丷원래의
2018-06-07 17:29:302292검색

이 글에서는 주로 PHP를 사용하여 파일을 받아들이고 접미사 이름을 얻는 방법을 소개합니다. 저자는 $_FILES 전역 변수의 사용에 중점을 둡니다. 필요한 친구는

HTML 양식을 참조할 수 있습니다. 파일 업로드 요청 시 코드는 다음과 같습니다.

  <!DOCTYPE html> 
  <html> 
  <head> 
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
  <title>File Upload</title> 
  </head> 
  <body> 
   
  <form enctype="multipart/form-data" action="test.php" method="POST"> 
    <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> 
    Send this File:<input name="userfile" type="file"/> 
    <input type="submit" value="Send File" /> 
  </form> 
   
   
  </body> 
  </html>

참고:

파일 업로드 양식의 속성이 enctype="multipart/form-data"인지 확인하세요. 그렇지 않으면 파일을 업로드할 수 없습니다

PHP
먼저 PHP에 대해 설명해야 합니다. 전역 변수 $_FILES, 이 배열에는 업로드된 모든 파일 정보가 포함됩니다

  • $_FILE['userfile']['name']: 클라이언트 컴퓨터 파일의 원래 이름

  • $_FILE['userfile'] ['type'] : 파일의 MIME 유형

  • $_FILE['userfile']['size'] : 업로드된 파일 크기

  • $_FILE['userfile' ]['tmpname'] : File 업로드 후 서버에 저장되는 임시 파일 이름

  • $_FILE['userfile']['error']: 파일 업로드 오류 코드

Idea
1. 40자리 임의의 문자열을 파일 이름으로 생성
2. 사진인지 음성인지에 따라 파일을 다른 파일 위치로 전송
3. 당분간은 파일 크기 및 파일 형식 확인이 수행되지 않습니다. being

  function processFile($files, $type) { 
    $uploadName = null; 
    foreach ($files as $name => $value) { 
      $originalName = $value[&#39;name&#39;]; 
      $arr = explode(".", $originalName); 
      $postfix = $arr[count($arr) - 1]; 
      $tmpPath = $value[&#39;tmp_name&#39;]; 
      $tmpType = $value[&#39;type&#39;]; 
      $tmpSize = $value[&#39;size&#39;]; 
    } 
     
    $newname = EhlStaticFunction::generateRandomStr(40).".".$postfix; 
     
    switch ($type) { 
      case 1 :  
        // 处理声音文件 
        $destination = VIDEOUPLOADDIR.$newname; 
        break; 
      case 2 : 
        // 处理图像文件 
        $destination = IMAGEUPLOADDIR.$newname; 
        break; 
    } 
     
    move_uploaded_file($tmpPath, $destination); 
  }

업로드된 파일의 접미사 이름을 얻으려면 다음 코드를 사용할 수 있습니다:

HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title></title>
  <meta name="keywords" content=" keywords" />
  <meta name="description" content="description" />
</head>
<body>
  <form method="post" action="" enctype="multipart/form-data">
  <input type="file" name="upfile" size="20" />
  <input type="submit" name="submit" value="submit" />
  </form>
</body>
</html>

PHP

<?PHP
  if(isset($_POST[&#39;submit&#39;])) {
    $string = strrev($_FILES[&#39;upfile&#39;][&#39;name&#39;]);
    $array = explode(&#39;.&#39;,$string);
    echo $array[0];
  }  
?>

결과 예:

20158591330708.jpg (423×167)

Summary: 위의 내용은 전체 내용입니다. 이 글의 내용이 모든 분들의 공부에 도움이 되기를 바랍니다.

관련 권장 사항:

PHP는 preg_split 및 분해를 사용하여 콘텐츠를 저장하기 위해 텍스트 영역을 분할하는 방법을 구현합니다.

PHP는 파일 잠금 및 잠금 해제 방법을 구현합니다.

PHP는 쿠키 기반 설정을 구현하여 자동으로 사용자가 30분 동안 활동이 없으면 기능을 종료하는 방법

위 내용은 파일을 승인하고 접미사 이름을 얻는 PHP 메소드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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