Visualizzazione risultati 1 fino 3 di 3

Discussione: Calcolare lo spazio utilizzato da una cartella

  1. #1
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,233

    Predefinito Calcolare lo spazio utilizzato da una cartella

    Buongiorno,
    avrei la necessità di conocere quanto pesa una cartella con tutte le relative sottocartelle e file.

    Ho utilizzato:
    Codice PHP:
    <?php

    $percorso
    = "directory/"; // || $percorso = "/membri/miki92/directory/"; || $percorso = "./directory/";

    $fs = disk_free_space($percorso);
    $ts = disk_total_space($percorso);

    echo
    "Spazio Disponibile: ".$fs;
    echo
    "<br />";
    echo
    "Spazio Totale: ".$ts;

    ?>
    Ma essendo su un hosting condiviso, come pensavo, escono numeri esagerati tipo:
    Codice:
    Spazio Disponibile: 109510447104
    Spazio Totale: 245120073728
    Anche se sono in byte sono numeri esagerati...conoscete qualche alternativa per calcolare lo spazio utilizzato da una directory?
    Apprezzi l'aiuto? Offrimi un caffè!

  2. #2
    Guest

    Predefinito

    Quelle funzioni calcolano lo stazio del disco rigido. Comunque basta una funzione ricorsiva.
    Codice PHP:
    <?php
    function getSize($dir) {
    $sum = 0;
    if(
    $d = opendir($dir)) {
    while((
    $file = readdir($d)) !== false)
    if(
    $file != '.' && $file != '..')
    if(
    is_dir($dir."/".$file))
    $sum+= getSize($dir."/".$file);
    else
    $sum+=filesize($dir."/".$file);

    closedir($d);
    }
    return
    $sum;
    }

    echo
    "La cartella pesa: ". getSize(".")." bytes";
    ?>

  3. #3
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,233

    Predefinito

    Ottimo, funziona...sai non ci avevo proprio pensato. Grazie utile come sempre.
    Apprezzi l'aiuto? Offrimi un caffè!

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •