함수 개요
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();
}
?>