파일 업로드 및 다운로드는 웹 개발에서 매우 일반적이고 중요한 기능입니다. 사용자가 사진, 문서를 업로드하거나 서버에서 파일을 다운로드 해야하는지 여부에 관계없이 백엔드 코드는 중요한 역할을합니다. 이 기사에서는 PHP를 사용하여 파일 업로드 및 다운로드 기능을 작성하고 참조를위한 실용적인 코드 예제를 제공하는 방법을 자세히 설명합니다.
파일 업로드는 로컬 파일을 서버로 전송하는 프로세스입니다. PHP에는 개발자가 업로드 기능을 구현할 수 있도록 풍부한 기능과 변수가 내장되어 있습니다.
먼저, 사용자가 파일을 선택할 수 있도록 프론트 엔드에서 파일 업로드 양식을 작성해야합니다.
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" value="업로드">
</form>
upload.php에서 $ _files hyperglobal 변수를 사용하여 파일 정보를 업로드하고 임시 디렉토리에서 지정된 위치로 파일을 이동하십시오.
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$file = $_FILES['file'];
<p>// 파일 이름을 얻으십시오<br>
$filename = $file['name'];</p>
<p>// 임시 경로를 얻으십시오<br>
$tmp_path = $file['tmp_name'];</p>
<p>// 저장 경로를 지정합니다<br>
$save_path = 'uploads/' . $filename;</p>
<p>// 파일을 대상 디렉토리로 이동하십시오<br>
move_uploaded_file($tmp_path, $save_path);</p>
<p>echo '文件업로드成功!';<br>
}<br>
?><br>
서버에 업로드 파일을 저장하는 디렉토리가 있는지 확인하십시오. 그렇지 않으면 업로드 작업이 실패합니다. 다음 코드로 디렉토리를 확인하고 만들 수 있습니다.
<?php
if (!file_exists('uploads')) {
mkdir('uploads', 0777, true);
}
?>
파일 다운로드는 서버의 파일을 사용자의 위치 영역으로 전송하는 것을 말합니다. PHP를 사용하면 HTTP 헤더를 설정하여 파일을 안전하게 다운로드 할 수 있습니다.
다운로드 .php에서 파일 경로를 지정하고 파일이 존재하는지 확인한 다음 응답 헤더를 설정하고 파일 내용을 출력합니다.
<?php
$file_path = 'files/document.pdf';
<p>if (file_exists($file_path)) {<br>
header('Content-Description: File Transfer');<br>
header('Content-Type: application/octet-stream');<br>
header('Content-Disposition: attachment; filename=' . basename($file_path));<br>
header('Content-Length: ' . filesize($file_path));<br>
header('Pragma: public');<br>
header('Expires: 0');</p>
<p>readfile($file_path);<br>
exit;<br>
} else {<br>
die('파일이 존재하지 않습니다!');<br>
}<br>
?><br>
지정된 다운로드 파일이 서버의 해당 디렉토리에 존재하는지 확인하십시오. 그렇지 않으면 사용자가 성공적으로 다운로드 할 수 없습니다.
이 기사는 PHP 백엔드의 파일 업로드 및 다운로드를 구현하는 주요 단계를 체계적으로 소개합니다. $ _files를 통해 파일 정보를 업로드하고 Move_Uploaded_File 을 사용하여 파일을 저장하고 HTTP 응답 헤더를 설정하여 파일 다운로드를 달성하십시오. 샘플 코드는 간단하고 이해하기 쉽고 초보자가 참조하고 적용하는 데 적합합니다. 개발자는 실제 요구에 따라 기능을 더욱 향상시키고 프로젝트의 사용자 경험을 향상시킬 수 있습니다.