Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Perché non riesco a capire se una cartella è vuota oppure no?

    Ecco il codice:
    Codice PHP:
    function carvuota($dir) {
        
    $content = Array();
        
    $handle opendir($dir);
        while (
    false !== ($entry readdir($handle))) {
            if (
    $entry != "." && $entry != ".."){
                
    $content[] = $entry;
                }
        }
        
    closedir ($handle);
        if(
    count($content)>0) {
            return 
    true;
        } else {
            return 
    false;
        }

    Codice PHP:
    <?php if (carvuota($cartella_download)) :?>
    <p>Nessun file scaricabile.</p>
    <?php else: ?>
    Lo script mi dice che la cartella è vuota anche quando è piena.
    Più pratica in futuro...

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Perché hai sbagliato i return, devi invertirli.
    Se count($content) > 0 devi ritornare false, non true.
    Ti stai chiedendo "la catella è vuota?" e dici di sì (true) se hai trovato dei file (count è > 0).

    Comunque visto che stai usando un array e vuoi sapere se è vuoto o no puoi usare la funzione empty().

  3. #3
    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    Perché hai sbagliato i return, devi invertirli.
    Se count($content) > 0 devi ritornare false, non true.
    Ti stai chiedendo "la catella è vuota?" e dici di sì (true) se hai trovato dei file (count è > 0).

    Comunque visto che stai usando un array e vuoi sapere se è vuoto o no puoi usare la funzione empty().
    ho risolto così:
    codice:
            <?php if (count(glob($cartella_download.'*')) === 0) :?>
            <p>Nessun file scaricabile.</p>
            <?php else: ?>
    Più pratica in futuro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.