
getNameIndex 메서드의 리턴 타입이 배열이 아닌 객체인 이유는 PHP 7.2 버전부터 getNameIndex 메서드는 SplFileInfo 객체를 반환하기 때문입니다.
SplFileInfo 객체는 파일 정보를 나타내는 클래스로, getNameIndex 메서드가 반환하는 객체는 해당 ZIP 아카이브 파일 내의 파일 이름을 나타냅니다.
이 객체를 배열로 변환하는 방법은 다음과 같습니다.
#hostingforum.kr
php
$zip = new ZipArchive;
$zip->open('example.zip');
$names = $zip->getNameIndex();
foreach ($names as $name) {
echo $name->getFilename() . "n";
}
$zip->close();
위 코드는 getNameIndex 메서드가 반환하는 SplFileInfo 객체를 foreach 문을 사용하여 반복하며, getFilename 메서드를 사용하여 파일 이름을 가져옵니다.
또는 SplFileInfo 객체를 배열로 변환하는 함수를 사용할 수도 있습니다.
#hostingforum.kr
php
$zip = new ZipArchive;
$zip->open('example.zip');
$names = $zip->getNameIndex();
$namesArray = array();
foreach ($names as $name) {
$namesArray[] = $name->getFilename();
}
print_r($namesArray);
$zip->close();
위 코드는 SplFileInfo 객체를 배열로 변환하는 함수를 사용하여 배열을 생성합니다.
2025-05-09 11:31