Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP zip_entry_filesize() 함수 사용법 – 압축 전 실제 파일 크기 구하기

함수 개요

zip_entry_filesize() 함수는 ZIP 아카이브에 포함된 특정 항목(entry)의 압축 이전 원본 파일 크기, 즉 실제 파일 크기를 바이트 단위로 반환합니다. 반대로 압축된 상태의 크기를 확인하고 싶다면 zip_entry_compressedsize() 함수를 사용하면 됩니다.

문법(Syntax)

zip_entry_filesize(zip_entry)

매개변수(Parameters)

  • zip_entry − zip_open()으로 연 ZIP 파일을 zip_read()로 읽어 온 엔트리 리소스를 지정합니다.

반환 값(Return)

압축 전의 실제 파일 크기를 나타내는 정수(바이트)를 반환합니다.

예제(Example)

<?php
$zip = zip_open("new.zip");
if ($zip) {
    while ($zip_entry = zip_read($zip)) {
        echo "압축 전 파일 크기 = " . zip_entry_filesize($zip_entry) . "<br />";
    }
    zip_close($zip);
}
?>

실행 결과(Output)

압축 전 파일 크기 = 150
압축 전 파일 크기 = 290
압축 전 파일 크기 = 195

참고: PHP 8.0 이상 환경에서는 ZipArchive 사용 권장

zip_open(), zip_read(), zip_entry_filesize() 등 구형 Zip 함수군은 PHP 8.0부터 완전히 제거되었습니다. 따라서 최신 버전의 PHP에서는 ZipArchive 클래스를 사용하는 것이 좋습니다. 동일한 결과는 다음과 같이 구현할 수 있습니다.

<?php
$za = new ZipArchive();
if ($za->open("new.zip") === true) {
    for ($i = 0; $i < $za->numFiles; $i++) {
        $stat = $za->statIndex($i);
        echo "압축 전 파일 크기 = " . $stat['size'] . "<br />";
    }
    $za->close();
}
?>