Auslesen eines Ordners und Abrunden der MB Zahl

Dieses Thema im Forum "Ruby, php, Perl, Python ..." wurde erstellt von damuxu, 05.01.2006.

  1. damuxu

    damuxu Grünschnabel

    Dabei seit:
    14.12.2005
    Beiträge:
    6
    Zustimmungen:
    0
    Hi,
    ich hab mal hier nu ja ein Script, womit ich auslesen kann, wie viele Dateien im Ordner sind und wie viel Speicher (in MB) diese brauchen.
    nur sieht die Speichergröße etwas unübersichtlich aus. Ich wollte, dass es auf 3 Stellen nach dem Komma abgerundet wird wie z.B. aus 0.0556964874268 MB wird zu 0.056 MB

    Hier ist mein derzeitiger Script:
    PHP:
    <?php
     
    if ($handle opendir('.')) { 
          
    $count 0
          
    $size 0
          while (
    false !== ($file readdir($handle))) { 
             if (
    is_file($file)) { 
                
    $count++; 
                
    $size += filesize($file) /1024 
             } 
          } 
          
    closedir($handle); 
          echo  
    ' Es werden derzeit ' $count ' Bilder gehostet'
       } else { 
          echo 
    'Fehler: Kann Verzeichnis nicht lesen'
       } 



    ?>
    <br>
    mit einer Gesamtgröße von

    <br>

    <?php 
       
    if ($handle opendir('.')) { 
          
    $count 0
          
    $size 0
          while (
    false !== ($file readdir($handle))) { 
             if (
    is_file($file)) { 
                
    $count++; 
                
    $size += filesize($file) /1024 /1024
             } 
          } 
          
    closedir($handle); 
          echo 
    ' ' $size ' MB'
       } else { 
          echo 
    'Fehler: Kann Verzeichnis nicht lesen'
       } 
    ?> 

     
  2. Anzeige

    Schau dir mal diesen Ratgeber an. Viele Antworten inkl. passender Shell-Befehle!
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Wolfgang, 05.01.2006
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo
    Also vorweg, ich kenne mich mit php nur rudimentär aus, da ich perl nutze.
    Aber die unter perl und auch c++ bekannte Funktion
    printf "FORMAT", STRING
    sollte es IMHO auch unter php geben.
    Also in deinem Fall
    printf("%09.3f",$size);
    Wenn das nix bringt, schau dir mal
    number_format()
    an.
    Unter perl und c++ geht das immer, aber so ich mich recht erinnere, ist da bei php ein Type double nötig.

    Gruß Wolfgang
     
  4. #3 patlkli, 20.01.2006
    patlkli

    patlkli Linux-Freak

    Dabei seit:
    23.11.2005
    Beiträge:
    158
    Zustimmungen:
    0
    Ort:
    Landshut
    Hallo damuxu!

    Dein Code muss nur um eine Zeile erweitert werden.

    Einfach folgenden benutzen:

    PHP:
    <?php
    if ($handle opendir('.')) {
          
    $count 0;
          
    $size 0;
          while (
    false !== ($file readdir($handle))) {
             if (
    is_file($file)) {
                
    $count++;
                
    $size += filesize($file) /1024 ;
             }
          }
          
    closedir($handle);
          echo  
    ' Es werden derzeit ' $count ' Bilder gehostet';
       } else {
          echo 
    'Fehler: Kann Verzeichnis nicht lesen';
       }



    ?>
    <br>
    mit einer Gesamtgröße von

    <br>

    <?php
       
    if ($handle opendir('.')) {
          
    $count 0;
          
    $size 0;
          while (
    false !== ($file readdir($handle))) {
             if (
    is_file($file)) {
                
    $count++;
                
    $size += filesize($file) /1024 /1024;
                
    $roundsize round($size3);
             }
          }
          
    closedir($handle);
          echo 
    ' ' $roundsize ' MB';
       } else {
          echo 
    'Fehler: Kann Verzeichnis nicht lesen';
       }
    ?>
    "echo" verändert, da PHP ja die andere Variable ausgeben soll.
    Die Funktion round( ) ..... naja ..... rundet halt Zahlen.
    Anwendung: round ([zu_rundende_zahl], [anzahl_der_dezimalen]);

    Dabei ist die Angabe der Dezimalen nach zwingend. Wenn keine Angabe gemacht wird, wird auf 0 Nachkommastellen d.h. ganze Zahlen gerundet.

    Siehe auch noch:
    SELFPHP
    PHP.net-Manual
     
Thema:

Auslesen eines Ordners und Abrunden der MB Zahl

Die Seite wird geladen...

Auslesen eines Ordners und Abrunden der MB Zahl - Ähnliche Themen

  1. Zahl innerhalb eines Dateinamens auslesen

    Zahl innerhalb eines Dateinamens auslesen: Hallo, ich habe eine große Anzahl an Dateien mit konstantem Dateinamen + einer Zahl, allerdings sind sie nicht fortlaufend nummeriert, also...
  2. auslesen eines atari gametraks

    auslesen eines atari gametraks: hallo, ich würde gerne die daten von einem atari gametrak über usb auslesen. das ding ist eigentlich nur für eine playstation2 aber es hat...
  3. Auslesen eines Verzeichnissbaums

    Auslesen eines Verzeichnissbaums: Hi Ich habe noch nicht so viel Erfahrung mit Bashscripten und habe folgendes Problem: Meine ganze Musiksammlung ist so strukturiert:...
  4. Teil einer Variablen auslesen und in neue Variable schreiben

    Teil einer Variablen auslesen und in neue Variable schreiben: Hallo, ist für Euch bestimmt ganz einfach, aber trotz googlen komme ich nicht auf eine Lösung. In Variable x habe ich stehen: xy,ab Nun möchte...
  5. Datei auslesen und fund per MAil versenden.

    Datei auslesen und fund per MAil versenden.: Hallo folgendes Script habe ich zur Zeit in Arbeit. Und zwar führe ich über "at" ein kleines Script aus was in einem Logfile nach bestimmten...