본문 바로가기
Web Programming Language/PHP

PHP) 슈퍼전역 변수 $_FILES

by manchesterandthecity 2020. 11. 3.

폼을 통해 파일을 업로드를 하게되면 슈퍼전역 변수인 $_FILES 변수를 통해 업로드 파일에 대한 정보를 가져올 수 있다.

$_FILES['업로드_파일폼명']['업로드_정보'];

업로드 파일폼명은 <input type="file" name="파일폼명" /> 태그상의 name이 들어간다.

업로드 정보는 연관배열로 반환이 되는데, 각 정보는 아래와 같다.

$_FILES['FileFormName'][array]

  • name => 업로드된 파일이름
  • type => 업로드된 파일타입
  • size => 업로드된 파일크기(BYTE)
  • tmp_name => 임시저장된 업로드 파일의 경로와 파일이름
  • error => 업로드 오류시 오류번호


각 업로드 파일마다 위와 같은 데이터를 갖는다.

파일이 업로드가 되면 우선 서버에 지정된 임시디렉토리에 파일이 저장되게 된다.

저장된 이후에 파일을 옮기지 않으면 스크립트 종료시 임시파일은 자동삭제 된다.

스크립트가 종료되기 전에 move_uploaded_file() 함수를 통해 새로운 위치로 파일을 옮겨주도록 한다.



파일을 업로드하다 오류가 나는 경우가 있다.

파일 오류가 나는 경우 $_FILES의 error 에 오류번호를 갖게 된다.

오류번호에 대한 내용은 아래와 같다.

업로드 오류(ERROR)시 내용

1: upload_max_filesize 설정값을 초과함 (php.ini의 설정, 업로드 최대용량)
2: MAX_FILE_SIZE 설정값을 초과함 (html form의 설정, 업로드 최대용량)
3: 파일 일부만 업로드 됨
4: 업로드된 파일이 없음
6: 사용가능한 임시폴더가 없음
7: 디스크에 저장할 수 없음
8: 파일 업로드가 중지됨
이외: 시스템 오류가 발생



출처 :

https://wttjj.tistory.com/89 [왕따짱의 사진과 프로그래밍]

'Web Programming Language > PHP' 카테고리의 다른 글

PHP) <?= ?> 태그  (0) 2020.11.05
PHP) move_uploaded_file() 함수  (0) 2020.11.03
PHP) magic_quotes_gpc 설정  (0) 2020.10.27
PHP) 세션 삭제 session_destroy( ) 함수  (0) 2020.10.27
PHP) session_start( ) 함수  (0) 2020.10.27

댓글