php Lettura files contenuti in una cartella

Tiziano

Nuovo Utente
25 Ago 2018
3
0
1
php - Scusate , sono un neofita per quanto riguarda php e mi sono trovato in difficoltà su una cosa stupida . Devo leggere dalla cartella /users/pensionato/pictures/ischia i nomi dei files contenuti in un range . Funziona tutto bene , ma mi visualizza i files richiesti escluso il primo . Se invece di usare >= utilizzo solo = mi mostra il primo file della lista . Cosa sto sbagliando ? Come potete vedere il codice non è certo farina del mio sacco .L'ho trovato e utilizzato con quasi nessuna modifica perchè mi è sembrato corretto .
PHP:
<html>  
<?php
    // indichiamo la cartella da aprire
    // il simbolo . indica la cartella corrente
    $cartella = '/users/pensionato/pictures/ischia/';
     
    // verifichiamo che la cartella esiste
    if(!is_dir($cartella))
       {
       exit('La cartella indicata non esiste!');
       }
     
    // apriamo la cartella
    $risorsa = opendir($cartella) or die('impossibile aprire la cartella!');
     
    // con il ciclo while eseguiamo più volte la funzione readdir()
    // valorizzando la variabile $file
    // fin quando essa non darà come risultato FALSE

 
    while(($file = readdir($risorsa)) !== FALSE)
         {
        if (($file >= 'Brisighella_0001.jpg') && ($file <= 'Brisighella_0004.jpg'))
    {
       echo 'Ho trovato ' . $file."<br />";
       }
    }
     
    // chiudiamo la cartella
    closedir();
    ?>
</html>
 
Ultima modifica di un moderatore:
Lo so , il problema è banale , ma per me è stato impegnativo risolverlo . Anche se non sono riuscito a spiegarmi perchè mi tralascia sempre il primo file , ho trovato una soluzione al problema . Ho sottoposto le variabili alle funzioni trim(stroupper(nome file)) e il problema non si presenta . Non mi spiego comunque come mai nella condizione precedente ( senza le funzioni suddette ) mi tralasciasse un file . Se il confronto è valido dal secondo in avanti , non capisco ancora perchè deva essere scartato il primo . Tutti i nomi file sono scritti nello stesso modo . Grazie comunque dell'interessamento
 

Discussioni simili