• User Attivo

    Copia cartelle e file

    Vorrei sapere come la funzione sottostante funziona. Alle variabili $source e $dest che va impostato? E in define() cosa sarebbe 'loc1'?
    Ho impostato le variabili in vari modi, ma continua a non funzionare.

    define('loc1', 'C:/FoxServ/www/cartella', true);

    function dircpy($source, $dest, $overwrite = false){
    if($handle = opendir(loc1 . $source)){ // if the folder exploration is sucsessful, continue
    while(false !== ($file = readdir($handle))){ // as long as storing the next file to $file is successful, continue
    if($file != '.' && $file != '..'){
    $path = $source . '/' . $file;
    if(is_file(loc1 . $path)){
    if(!is_file(loc1 . $dest . '/' . $file) || $overwrite)
    if([EMAIL="!@copy(loc1"]!@copy(loc1[/EMAIL] . $path, loc1 . $dest . '/' . $file)){
    echo '<font color="red">File ('.$path.') could not be copied, likely a permissions problem.</font>';
    }
    } elseif(is_dir(loc1 . $path)){
    if(!is_dir(loc1 . $dest . '/' . $file))
    mkdir(loc1 . $dest . '/' . $file); // make subdirectory before subdirectory is copied
    dircpy($path, $dest . '/' . $file, $overwrite); //recurse!
    }
    }
    }
    closedir($handle);
    }
    } // end of dircpy()

    GRAZIE


  • Super User

    loc1=nome della costante che indica la path dei files
    $source=file di partenza
    $dest=file da creare


  • User Attivo

    loc1=nome della costante che indica la path dei files
    $source=file di partenza
    $dest=file da creare

    Grazie
    Mi sapresti spiegare cosa indica define(loc1, "directory", true);
    e il comando "mkdir" che cartelle crea. Ho una grossa difficoltà a capire quest'ultimo comando in quanto indica anche la costante "loc1".
    Cortesemente, se puoi, fammi luce.

    Grazie ancora
    Ti saluto


  • Super User

    loc1 è una costante,cioè un dato che vale x tutto lo script e non può essere modificato nell'esecuzione.
    Il valore di loc1 è il percorso dove si trova il file che utilizzi.
    Per quanto riguarda le informazioni su mkdir(); ti rimando qui:
    http://openskills.info/infobox.php?ID=73


  • User Attivo

    @probid said:

    loc1 è una costante,cioè un dato che vale x tutto lo script e non può essere modificato nell'esecuzione.
    Il valore di loc1 è il percorso dove si trova il file che utilizzi.
    Per quanto riguarda le informazioni su mkdir(); ti rimando qui:
    http://openskills.info/infobox.php?ID=73

    Quindi, per quanto possa aver capito, per quel che stai dicendo DEFINE(loc1, "directory", true) copia i file contenuti in questa directory e per le sottodirectory se esisterebbero che dovrei fare? Dovrei definire dinuovo la costante, ES.: DEFINE(loc2, "altra_directory", true), per copiare i file contenuti in quest'ultima?

    CIAO