> 백엔드 개발 > PHP 튜토리얼 > PHP 슈퍼 전역 변수의 $_FILES에 대한 자세한 설명

PHP 슈퍼 전역 변수의 $_FILES에 대한 자세한 설명

藏色散人
풀어 주다: 2023-04-08 10:48:01
앞으로
3952명이 탐색했습니다.

PHP 슈퍼 전역 변수의 $_FILES에 대한 자세한 설명

$_FILES - HTTP POST를 통해 현재 스크립트에 업로드된 프로젝트 배열입니다.

파일 필드 이름='userfile'을 업로드한다고 가정하면 $_FILES 배열에는 다음이 포함됩니다.

$_FILES['userfile']['name']      //客户端机器文件的原名称。
$_FILES['userfile']['type']     //文件的 MIME 类型,如果浏览器提供此信息的话。一个例子是“image/gif”。不过此 MIME 类型在 PHP 端并不检查,因此不要想当然认为有这个值。
$_FILES['userfile']['size']     //已上传文件的大小,单位为字节。
$_FILES['userfile']['tmp_name']   //文件被上传后在服务端储存的临时文件名。
$_FILES['userfile']['error']      //和该文件上传相关的错误代码。此项目是在 PHP 4.2.0 版本中增加的。
/**
로그인 후 복사

오류 코드:

UPLOAD_ERR_OK

값은 0이고 오류가 발생하지 않으며 파일 업로드가 성공합니다. .

UPLOAD_ERR_INI_SIZE

값은 1이며 업로드된 파일이 php.ini의 upload_max_filesize 옵션으로 제한되는 값을 초과합니다.

UPLOAD_ERR_FORM_SIZE

값은 2이며, 업로드된 파일의 크기가 HTML 양식의 MAX_FILE_SIZE 옵션에서 지정한 값을 초과합니다.

예: 양식에 숨겨진 필드를 추가합니다. 값 단위는 바이트입니다.

<form enctype="multipart/form-data" action="test.php" method="POST">
  <!-- MAX_FILE_SIZE must precede the file input field -->
  <input type="hidden" name="MAX_FILE_SIZE" value="12" />
  <!-- Name of input element determines name in $_FILES array -->
  Send this file: <input name="userfile" type="file" />
  <input type="submit" value="Send File" />
</form>
로그인 후 복사

                                                                        >

UPLOAD_ERR_NO_FILE

값은 4이며 업로드된 파일이 없습니다.

UPLOAD_ERR_NO_TMP_DIR

값이 6이고 임시 폴더를 찾을 수 없습니다. PHP 4.3.10 및 PHP 5.0.3에서 도입되었습니다.

UPLOAD_ERR_CANT_WRITE

값은 7, 파일 쓰기에 실패했습니다. PHP 5.1.0에서 도입되었습니다.

파일이 업로드된 후에는 php.ini의 upload_tmp_dir을 다른 경로로 설정하지 않는 한 기본적으로 서버의 기본 임시 디렉터리에 저장됩니다. 서버측의 기본 임시 디렉터리는 PHP 실행 환경의 환경 변수 TMPDIR을 변경하여 재설정할 수 있지만, PHP 스크립트 내부에서 putenv() 함수를 실행하여 설정해도 아무런 효과가 없습니다. 이 환경 변수는 업로드된 파일에 대해 다른 작업도 수행되는지 확인하는 데에도 사용할 수 있습니다. 파일 업로드에 사용할 수 있는 기타 기능:

is_uploaded_file:

is_uploaded_file — 判断文件是否是通过 HTTP POST 上传的
is_uploaded_file ( string $filename ) : bool
로그인 후 복사

매개변수: filename - 확인할 파일 이름.

반환 값: 성공 시 TRUE, 실패 시 FALSE. filename으로 제공된 파일이 HTTP POST를 통해 업로드된 경우 TRUE를 반환합니다. 이는 악의적인 사용자가 /etc/passwd와 같이 액세스할 수 없는 파일에 액세스하도록 스크립트를 속일 수 없도록 하는 데 사용할 수 있습니다.

move_uploaded_file:

move_uploaded_file — 将上传的文件移动到新位置
move_uploaded_file ( string $filename , string $destination ) : bool
로그인 후 복사

매개변수: filename 업로드된 파일의 파일 이름, 대상은 파일을 이 위치(절대 경로)로 이동합니다.

이 함수는 filename으로 지정된 파일이 합법적인 업로드 파일인지 확인하고 확인합니다( 즉, HTTP POST 업로드 메커니즘을 사용하여 PHP를 통해 업로드됩니다. 파일이 적법한 경우 대상에 지정된 파일로 이동됩니다. 더 많은 관련 PHP 지식을 보려면

php 튜토리얼

을 방문하세요!

위 내용은 PHP 슈퍼 전역 변수의 $_FILES에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:cnblogs.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿