[php] PHP에서 ZIP 파일을 다운로드하는 방법

PHP를 사용하여 웹 애플리케이션을 개발할 때, 사용자에게 ZIP 파일을 다운로드할 수 있는 기능을 구현해야 할 때가 있습니다. 다음은 PHP를 사용하여 ZIP 파일을 다운로드하는 간단한 방법에 대한 예제 코드입니다.

ZIP 파일 생성 및 다운로드

<?php
$zipFileName = 'example.zip';
$files = array('file1.txt', 'file2.txt', 'file3.txt');

$zip = new ZipArchive();
if ($zip->open($zipFileName, ZipArchive::CREATE) === TRUE) {
    foreach ($files as $file) {
        $zip->addFile($file);
    }
    $zip->close();

    header('Content-Type: application/zip');
    header('Content-disposition: attachment; filename=' . $zipFileName);
    header('Content-Length: ' . filesize($zipFileName));
    readfile($zipFileName);
    unlink($zipFileName);
} else {
    echo 'Failed to create ZIP file';
}
?>

위의 코드는 다음과 같은 작업을 수행합니다.

  1. 지정된 파일들을 포함한 새로운 ZIP 파일을 만듭니다.
  2. 생성된 ZIP 파일을 사용자에게 다운로드하도록 합니다.
  3. ZIP 파일을 다운로드한 후에는 서버에서 해당 파일을 삭제합니다.

위의 코드를 사용하여 ZIP 파일을 생성하고 다운로드할 수 있습니다. 필요에 따라 파일 경로를 적절히 수정하여 원하는 파일을 ZIP으로 압축하고 다운로드할 수 있습니다.

참고 자료:
PHP 공식 문서 - ZipArchive