$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;
}
}
Mã này sẽ liệt kê tất cả các tệp trong kho lưu trữ zip nhưng tôi muốn loại trừ danh sách thư mục. Nếu mục trong mảng là một thư mục, tôi muốn loại trừ nó khỏi mảng BUT tôi vẫn muốn liệt kê các tệp trong thư mục. Chỉ cần không hiển thị tên của thư mục trong danh sách.Danh sách Php CHỈ các tệp trong kho lưu trữ zip (loại trừ các thư mục)
Có cách nào tôi có thể phát hiện nếu mục là một thư mục trong vòng lặp foreach của tôi (như thế nào?) Hoặc tôi cần chạy tìm kiếm trên mảng và tìm thư mục rồi bỏ đặt nó (như thế nào?)?
Cảm ơn sự giúp đỡ của bạn
Tôi chưa bao giờ sử dụng ZipArchive hoặc bất kỳ thứ gì liên quan đến tệp zip trong PHP, nhưng đây là ảnh chụp trong bóng tối. Nhìn thấy như thế nào ZipArchive không có cách nào để nói cho bạn biết một cái gì đó là một tập tin hoặc thư mục, bạn có thể có thể sử dụng chức năng is_dir trong PHP và chạy nó với một nếu. –
@CBroe, xin lỗi, nhưng nếu bạn muốn sử dụng các chức năng hệ thống tập tin, bạn cần giải nén lưu trữ zip. – sectus