Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 뉴지스탁
- 머신러닝
- 퀀트
- 국제유가
- 테슬라
- 마법공식
- 제다큐어
- 코로나19
- 경제위기
- 반려견치매
- 중국증시
- Python
- FOMC
- 넬로넴다즈
- 뇌졸중
- 엘론 머스크
- DSP
- 지엔티파마
- 미국금리
- 주가분석
- 아모레퍼시픽
- 스크리닝
- WTI
- 중국경제
- 유상증자
- WTI유
- 주식투자
- 금리인상
- 기업분석
- prometheus
Archives
- Today
- Total
Data Analysis for Investment & Control
PHP - $_FILES 본문
반응형
파일을 다루는 PHP를 작성하는 것은 꽤 직관적입니다. 파일을 업로드하게되면, 웹 서버의 기본 임시 디렉토리에 저장이 됩니다. 스크립트가 끝날 때까지 파일을 옮기거나 이름을 바꿔주지 않으면 파일은 지워지게 됩니다.
PHP 스크립트에서 다루는 데이터는 수퍼글로벌 배열인 $_FILES에 저장되어 있습니다. register_globals가 활성화되어 있으면 변수 이름을 통해 바로 정보를 얻을 수 있습니다. 그렇지만 파일 업로드 부분에서는 register_globals를 비활성화 하는 것이 중요하므로 수퍼글로벌 배열을 사용해야 합니다.
HTML 폼에서 <file> 태그의 이름으로 $_FILES에 각 요소들이 저장되어 있습니다. userfile이란 이름을 가졌었다면 배열은 다음과 같은 내용을 가집니다.
■ $_FILES['userfile']['tmp_name'] - 웹 서버에 임시로 저장된 파일의 위치.
■ $_FILES['userfile']['name'] - 사용자 시스템에 있을 때의 파일 이름.
■ $_FILES['userfile']['size'] - 파일의 바이트 크기.
■ $_FILES['userfile']['type'] - 파일의 MIME 타입을 가리킴. 예를 들어, text/plain이나 image/gif.
■ $_FILES['userfile']['error'] - 파일 업로드할 때 일어난 오류 코드를 알려주는데, PHP 4.2.0에서 추가됨.
■ $_FILES['userfile']['name'] - 사용자 시스템에 있을 때의 파일 이름.
■ $_FILES['userfile']['size'] - 파일의 바이트 크기.
■ $_FILES['userfile']['type'] - 파일의 MIME 타입을 가리킴. 예를 들어, text/plain이나 image/gif.
■ $_FILES['userfile']['error'] - 파일 업로드할 때 일어난 오류 코드를 알려주는데, PHP 4.2.0에서 추가됨.
파일이 어디있고 이름이 뭔지 알았다면 좀 더 나은 곳으로 파일을 복사하도록 합시다. 스크립트가 끝나면 임시 파일은 지워집니다. 그러므로 그 파일을 계속 사용하려면 파일을 옮기거나 이름을 바꿔주어야 합니다.
예를 들어, 업로드 된 파일을 최신 뉴스 기사로 사용할 수도 있을 것입니다. 따라서 그 파일 내에 있는 모든 태그를 제거하고 이들을 좀 더 유용한 디렉토리인 '/uploads' 디렉토리로 옮길 수도 있습니다. 물론 그 전에 웹 서버의 루트에 uploads라는 디렉토리를 만들어야 놓아야 겠지요.
반응형
'Code > WEB' 카테고리의 다른 글
PHP - serialize() / unserialize() (0) | 2010.10.25 |
---|---|
PHP - move_uploaded_file() (0) | 2010.10.25 |
HTML TAG - enctype (0) | 2010.10.25 |
스마트한 게시판 만들기 - 네이버 <스마트 에디터>와 다음 <다음 에디터>의 오픈소스 활용 (0) | 2010.10.12 |
DOM(Document Object Model) (0) | 2010.10.04 |
Comments