$za = new ZipArchive();
$za->open($source);
for($i = 0; $i < $za->numFiles; $i++){
$stat = $za->statIndex($i);
$items = array(basename($stat['name']) . PHP_EOL);
foreach($items as $item) {
echo $item;
}
}
此代碼將列出zip歸檔文件中的所有文件,但我想排除文件夾列表。如果數組中的項目是一個文件夾,我想從數組中排除它,但我仍然想列出文件夾內的文件。只是不要在列表中顯示文件夾的名稱。PHP列表只包含zip文件內的文件(不包括文件夾)
有沒有一種方法可以檢測項目是否在我的foreach循環中的目錄(如何?)或者我需要在數組上運行搜索並查找文件夾,然後取消設置(如何?)?
感謝您的幫助
我從來沒有使用ZipArchive或任何與PHP中的zip文件相關的東西,但這裏是黑暗中的鏡頭。看到ZipArchive無法告訴你某些東西是文件還是目錄,你可能可以在PHP中使用is_dir函數並使用if運行它。 –
@CBroe,很抱歉,如果您想使用文件系統功能,您需要提取zip壓縮文件。 – sectus