PHP 파일 업로드 가이드: move_uploaded_file 함수를 사용하여 업로드된 파일을 처리하는 방법
웹 애플리케이션 개발에서 파일 업로드는 일반적인 요구 사항입니다. PHP는 업로드된 파일을 처리하기 위해 편리한 move_uploaded_file() 함수를 제공합니다. 이 글에서는 이 기능을 사용하여 파일 업로드 기능을 구현하는 방법을 소개합니다.
1. 준비
시작하기 전에 PHP 환경이 파일 업로드 매개변수로 구성되었는지 확인하세요. php.ini 파일을 열고 "file_uploads" 매개변수를 찾아 이를 확인할 수 있습니다. 이 매개 변수의 값이 "Off"인 경우 "on"으로 변경한 후 파일을 저장하고 서버를 다시 시작하십시오.
2. 파일 업로드 양식 만들기
먼저 HTML 양식에 파일 업로드 입력 필드를 만들어야 합니다. 다음은 간단한 예입니다.
<form action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="fileToUpload" id="fileToUpload"> <input type="submit" value="上传文件" name="submit"> </form>
위 코드에서는 enctype="multipart/form-data"
를 사용하여 양식에 파일 업로드를 위한 입력 필드가 포함되어 있음을 지정합니다. enctype="multipart/form-data"
来指定表单中包含了一个文件上传的输入域。
三、处理文件上传请求
接下来,我们需要创建一个PHP脚本来处理文件上传请求。在该脚本中,我们将使用move_uploaded_file()
函数来保存上传的文件。以下是一个基本的示例:
<?php $targetDir = "uploads/"; if(isset($_POST["submit"])){ $targetFile = $targetDir . basename($_FILES["fileToUpload"]["name"]); $uploadOk = 1; $imageFileType = strtolower(pathinfo($targetFile,PATHINFO_EXTENSION)); // 检查文件是否已经存在 if (file_exists($targetFile)) { echo "文件已经存在。"; $uploadOk = 0; } // 检查文件大小 if ($_FILES["fileToUpload"]["size"] > 500000) { echo "文件大小超过限制。"; $uploadOk = 0; } // 允许的文件格式 if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg" && $imageFileType != "gif" ) { echo "只允许上传JPG, JPEG, PNG, GIF格式的文件。"; $uploadOk = 0; } // 检查上传是否成功 if ($uploadOk == 0) { echo "文件上传失败。"; } else { if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $targetFile)) { echo "文件上传成功。"; } else { echo "文件上传失败。"; } } } ?>
在上面的代码中,我们首先定义了一个目标文件夹$targetDir
,用来存储上传的文件。然后,我们通过$_FILES["fileToUpload"]
获取上传文件的信息,并使用basename()
函数获取上传文件的文件名。
接下来,我们对上传的文件进行一些检查,如判断文件是否已经存在、文件大小是否超过限制以及文件格式是否符合要求。如果检查通过,我们就可以使用move_uploaded_file()
move_uploaded_file()
함수를 사용하겠습니다. 기본 예는 다음과 같습니다. <?php if(isset($_FILES["fileToUpload"]["name"])) { echo "上传的文件名:" . $_FILES["fileToUpload"]["name"] . "<br>"; echo "文件类型:" . $_FILES["fileToUpload"]["type"] . "<br>"; echo "文件大小:" . ($_FILES["fileToUpload"]["size"] / 1024) . " KB<br>"; } ?>
$targetDir
를 정의합니다. 그리고 $_FILES["fileToUpload"]
를 통해 업로드된 파일의 정보를 얻어오고, basename()
함수를 사용하여 업로드된 파일의 파일명을 얻어옵니다. 다음으로, 업로드된 파일에 대해 파일이 이미 존재하는지, 파일 크기가 제한을 초과하는지, 파일 형식이 요구 사항을 충족하는지 확인하는 등 몇 가지 검사를 수행합니다. 검사가 통과되면 move_uploaded_file()
함수를 사용하여 파일을 임시 디렉터리에서 대상 폴더로 이동할 수 있습니다. 4. 업로드 결과 표시마지막으로 파일 업로드 양식 페이지에 결과를 출력하여 업로드 결과를 표시할 수 있습니다. 다음은 간단한 예입니다. rrreee
위 코드는 파일 업로드가 완료된 후 업로드된 파일 이름, 파일 유형 및 파일 크기를 표시합니다.위 내용은 PHP 파일 업로드 가이드: move_uploaded_file 함수를 사용하여 업로드된 파일을 처리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!