PHP 배열을 사용하여 파일 업로드 및 다운로드 기능을 구현하는 방법
1. 개요
파일 업로드 및 다운로드는 웹 애플리케이션의 일반적인 기능 중 하나입니다. PHP 배열은 파일 업로드 및 다운로드 기능을 구현할 때 큰 도움이 될 수 있는 매우 유용한 데이터 구조입니다. 이 기사에서는 PHP 배열을 사용하여 파일 업로드 및 다운로드 기능을 구현하고 해당 코드 예제를 첨부하는 방법을 소개합니다.
2. 파일 업로드 기능 구현
<form action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="file"> <input type="submit" value="上传文件"> </form>
<?php if ($_FILES["file"]["error"] == 0) { $filename = $_FILES["file"]["name"]; $tempname = $_FILES["file"]["tmp_name"]; $destination = "uploads/" . $filename; if (move_uploaded_file($tempname, $destination)) { echo "文件上传成功!"; } else { echo "文件上传失败!"; } } else { echo "文件上传发生错误!"; } ?>
<form action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="file"> <input type="submit" value="上传文件"> </form>
<?php if ($_FILES["file"]["error"] == 0) { $filename = $_FILES["file"]["name"]; $tempname = $_FILES["file"]["tmp_name"]; $destination = "uploads/" . $filename; if (move_uploaded_file($tempname, $destination)) { echo "文件上传成功!"; } else { echo "文件上传失败!"; } } else { echo "文件上传发生错误!"; } ?>
3. 파일 다운로드 기능 구현
<?php $files = array_diff(scandir("uploads/"), array(".", "..")); foreach ($files as $file) { echo "<a href='download.php?file=$file'>$file</a><br>"; } ?>
<?php if (isset($_GET["file"])) { $filename = $_GET["file"]; $filepath = "uploads/" . $filename; if (file_exists($filepath)) { header("Content-Disposition: attachment; filename=" . $filename); header("Content-Type: application/octet-stream"); header("Content-Length: " . filesize($filepath)); readfile($filepath); } else { echo "文件不存在!"; } } else { echo "参数错误!"; } ?>
<?php $files = array_diff(scandir("uploads/"), array(".", "..")); foreach ($files as $file) { echo "<a href='download.php?file=$file'>$file</a><br>"; } ?> <?php if (isset($_GET["file"])) { $filename = $_GET["file"]; $filepath = "uploads/" . $filename; if (file_exists($filepath)) { header("Content-Disposition: attachment; filename=" . $filename); header("Content-Type: application/octet-stream"); header("Content-Length: " . filesize($filepath)); readfile($filepath); } else { echo "文件不存在!"; } } else { echo "参数错误!"; } ?>
IV. 요약
PHP 배열을 사용하면 파일 업로드 및 다운로드 기능을 간단하고 효율적으로 구현할 수 있습니다. 파일 업로드 시 $_FILES 배열을 통해 파일 관련 정보를 얻고, move_uploaded_file 함수를 사용하여 지정된 디렉터리로 파일을 이동합니다. 파일 다운로드에서는 $_GET 배열을 통해 다운로드할 파일명을 얻어 해당 파일을 브라우저로 보낸다. 이 글의 샘플 코드가 여러분에게 도움이 되기를 바라며 파일 업로드 및 다운로드 기능을 쉽게 구현할 수 있기를 바랍니다.
위 내용은 PHP 배열을 사용하여 파일 업로드 및 다운로드 기능을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!