파일 업로드 및 다운로드는 최신 웹 개발에서 매우 일반적인 기능입니다. PHP는 개발자가 업로드 및 다운로드를 포함하여 파일 작업을 처리 할 수 있도록 내장 기능을 제공합니다. 이 기사는 PHP 기능을 사용하여 파일을 업로드하고 다운로드하고 참조를위한 코드 예제를 제공하는 방법을 자세히 소개합니다.
파일 업로드는 로컬 파일을 서버로 전송하는 프로세스입니다. php에서는`move_uploaded_file ()`및`$ _files` 글로벌 변수를 사용하여 파일 업로드를 처리하십시오.
먼저 HTML 양식에 파일 업로드에 대한 입력 제어가 포함되어 있는지 확인하십시오.
<form method="post" enctype="multipart/form-data"> <input type="file" name="file"> <input type="submit" value="업로드"> </form>
다음으로 PHP 코드에서`$ _files` 글로벌 변수를 사용하여 업로드 된 파일 정보를 얻으십시오. `$ _files`는 이름, 유형, 임시 저장 경로 등과 같은 정보를 포함하는 연관 배열입니다.
if ($ _server [ 'request_method'] === 'post') { $ file = $ _files [ 'file']; // 파일 정보 가져 오기 $ filename = $ file [ 'name']; // 파일 이름 $ tmppath = $ 파일 [ 'tmp_name']; // 임시 파일 경로 // 파일 업로드 $ 대상 = '업로드/'. $ filename; move_uploaded_file ($ tmppath, $ 대상); Echo '파일이 성공적으로 업로드되었습니다!'; }
위의 코드에서 먼저`$ _files [ 'file']`을 통해 파일 정보를 얻은 다음`move_uploaded_file ()`를 사용하여 임시 파일을 지정된 대상 경로로 이동합니다. 마지막으로, 성공적인 업로드를위한 프롬프트 메시지는 'echo'문을 통해 출력입니다.
파일 다운로드는 서버의 파일을 클라이언트로 전송하는 프로세스입니다. PHP에서`readfile ()`함수를 사용하여 파일 다운로드를 달성하십시오.
간단한 파일 다운로드 예는 다음과 같습니다.
$ file = 'path/to/file.txt'; // if (file_exists ($ file)) {다운로드 할 파일 경로를 설정합니다. 헤더 ( '내용 설명 : 파일 전송'); 헤더 ( 'content-type : application/octet-stream'); 헤더 ( 'content-disposition : 첨부 파일; filename ='. baseName ($ file)); 헤더 ( 'Content-Transfer-Encoding : Binary'); 헤더 ( '만료 : 0'); 헤더 ( '캐시-제어 : 필수-검증서, 사후 점차 = 0, pre-Check = 0'); 헤더 ( 'Pragma : Public'); 헤더 ( 'content-length :'. filesize ($ file)); readfile ($ 파일); // 파일 컨텐츠 출력 출력; } 또 다른 { Echo '파일을 찾을 수 없습니다!'; }
이 코드에서 먼저`file_exists ()`을 통해 파일이 존재하는지 확인하십시오. 파일이 존재하는 경우 관련 HTTP 헤더 정보 (예 : 파일 유형, 파일 이름, 파일 크기 등)를 설정 한 다음`readfile ()`를 사용하여 파일 콘텐츠를 클라이언트에 출력하십시오.
브라우저가 파일을 올바르게 구문 분석하고 다운로드를 시작하는 데 도움이되는 HTTP 헤더 정보, 특히 'Content-Type'및 'Content-Disposition'을 올바르게 설정하는 것이 중요합니다.
이 기사에서는 PHP 기능을 사용하여 파일을 업로드하고 다운로드하는 방법에 대해 설명합니다. `$ _files` 글로벌 변수 및`move_uploaded_file () 함수를 통해 로컬에서 서버로 파일을 쉽게 업로드 할 수 있습니다. 적절한 HTTP 헤더 정보 및`readfile ()`함수를 설정하면 서버의 파일을 클라이언트에 성공적으로 다운로드 할 수 있습니다. 이 코드 샘플이 개발에 도움이되기를 바랍니다.