Visualizzazione dei risultati da 1 a 6 su 6

Visualizzazione discussione

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    174

    Argomenti funzioni inizializzati

    Salve a tutti, ho un problemino con i parametri passati ad una funzione che chiamo ricorsivamente. Quello che fa la funzione è elencare i file contenuti in una directory. Posto il codice.
    codice:
    <?php
    
    function readDirRec($target = UPLOAD_DIR, $level = 0) {
        $handle = opendir($target);
        
        echo 'entro in ' . $target . '
    ';
        while ($file = readdir($handle)) {
            if ($file != '..' && $file != '.') {
                $resource = $target . '/' . $file;
                if (is_dir($resource)) {
                    echo '[img]img/icons/16/directory.png[/img]';
                    echo $file . '
    ';
                    readDirRec($resource, $level++);
                } else {
                    for ($i = 0; $i < $level; $i++) {
                        echo '[img]img/icons/16/empty.png[/img]';
                    }
                    echo '[img]img/icons/16/file.png[/img]';
                    echo '' . $file . ' (' . $level . ')[' . is_dir($resource) . '] 
    ';
                }
                
            }
        }
        echo 'esco da ' . $target . '
    ';
    }
    
    ?>
    UPLOAD_DIR è una stringa che contiene il path relativo alla directory da listare e l'invocazione la eseguo non passando alcun parametro.
    Quello che ottengo è il risultato nell'immagine allegata e non capisco perchè al ritorno della chiamata ricorsiva $level mi risulta incrementata.
    Mi sapreste dare una dritta per capire dove sbaglio?
    Grazie infinite

    Dal comportamento sembrerebbe che $level sia statica e viene incrementata una volta quando entra in file e una volta in images...
    Immagini allegate Immagini allegate

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 © 2025 vBulletin Solutions, Inc. All rights reserved.