$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;
}
}
Questo codice elencherà tutti i file all'interno di un archivio zip ma voglio escludere l'elenco delle cartelle. Se l'elemento nell'array è una cartella, voglio escluderlo dall'array MA voglio comunque elencare i file all'interno della cartella. Basta non visualizzare il nome della cartella nell'elenco.Elenco php SOLO file all'interno dell'archivio zip (escludere cartelle)
C'è un modo per rilevare se l'elemento è una directory nel mio ciclo foreach (come?) O devo eseguire una ricerca sull'array e cercare le cartelle e quindi annullarlo (come?)?
Grazie per il vostro aiuto
Non ho mai usato ZipArchive o qualsiasi cosa relativa ai file zip in PHP, ma ecco uno scatto al buio. Visto che ZipArchive non ha modo di dirti se qualcosa è un file o una directory, potresti essere in grado di usare la funzione is_dir in PHP ed eseguirla con un if. –
@CBroe, scusa, ma se vuoi usare le funzioni del filesystem devi estrarre l'archivio zip. – sectus