2017-03-03 5 views
-1

파일의 압축을 풀고 있는데 그 내용의 이름을 모른다. 이 파일을 즉시 열고 처리해야합니다. 어떻게 잡을 수 있습니까? 그 이름을 몰라서? Heres는방금 ​​압축을 해제 한 파일을받는 방법. PHP

내 코드 ...

if($extension == 'ZIP' || $extension == 'zip'){ 
    $zip = new ZipArchive; 
    $res = $zip->open($_FILES['my_file']['tmp_name']); 
     if ($res === TRUE) { 
      $zip->extractTo('../storage/unzipped/'); 
      $zip->close(); 

      // Get file, how? If I dont know the name, of the file inside the 
      // zip folder? 


     } else { 
      // Errors 
     } 
} 

나는 확실히 내가 이름을 알고있는 경우, 파일을 여는 방법을 알고 .....하지만이 경우에는, 나는 늘 이름을 알고, 그래서 필요 어떻게 든 그것을 얻을 수 있습니다. zip_entry_name() ??

답변

0

그럼 누구든지 대답 할 수 있기 전에 그것을 해결했습니다 ... 여기 그것이 필요한 사람을위한 것입니다.

$entry = $zip->getNameIndex(0); 

또는 파일은 여러 폴더/파일

$filenames=[]; 
for ($i = 0; $i < $zip->numFiles; $i++) { 
    $filenames[] = $zip->getNameIndex($i); 
}; 

전체 코드

if($extension == 'ZIP' || $extension == 'zip'){ 
$zip = new ZipArchive; 
$res = $zip->open($_FILES['my_file']['tmp_name']); 
    if ($res === TRUE) { 
     $zip->extractTo('../storage/unzipped/'); 
     $filename = $zip->getNameIndex(0); 
     // Open file or stream it or whatever you want 
     // now that you have the name 
     $zip->close(); 
    } else { 
     // error 
    } 
} 
이있는 경우