Seite 1 von 2

größe eines ordners mit php berechnen

Verfasst: 28.11.2006 18:05
von ultracoder
ich suche eine php funktion, die einem die gesamte größe eines auf der webspace liegenden ordners angibt

Verfasst: 28.11.2006 18:18
von gn#36
schau mal in die index.php Datei des Adminbereichs. Da gibts das hier:

Code: Alles auswählen

$avatar_dir_size = 0;

	if ($avatar_dir = @opendir($phpbb_root_path . $board_config['avatar_path']))
	{
		while( $file = @readdir($avatar_dir) )
		{
			if( $file != "." && $file != ".." )
			{
				$avatar_dir_size += @filesize($phpbb_root_path . $board_config['avatar_path'] . "/" . $file);
			}
		}
		@closedir($avatar_dir);

		//
		// This bit of code translates the avatar directory size into human readable format
		// Borrowed the code from the PHP.net annoted manual, origanally written by:
		// Jesse (jesse@jess.on.ca)
		//
		if($avatar_dir_size >= 1048576)
		{
			$avatar_dir_size = round($avatar_dir_size / 1048576 * 100) / 100 . " MB";
		}
		else if($avatar_dir_size >= 1024)
		{
			$avatar_dir_size = round($avatar_dir_size / 1024 * 100) / 100 . " KB";
		}
		else
		{
			$avatar_dir_size = $avatar_dir_size . " Bytes";
		}

	}
	else
	{
		// Couldn't open Avatar dir.
		$avatar_dir_size = $lang['Not_available'];
	}

Verfasst: 28.11.2006 18:44
von ultracoder
sorry, aber ich versteh den quellcode noch nicht, weil ich noch php lerne, was genau ist denn der befehl

Verfasst: 28.11.2006 19:06
von Miriam
Es ist eine Schleife....

Code: Alles auswählen

if ($avatar_dir = @opendir($phpbb_root_path . $board_config['avatar_path']))
   {
      while( $file = @readdir($avatar_dir) )
      {
         if( $file != "." && $file != ".." )
         {
            $avatar_dir_size += @filesize($phpbb_root_path . $board_config['avatar_path'] . "/" . $file);
         }
      }
      @closedir($avatar_dir); 

Verfasst: 28.11.2006 19:14
von ultracoder
also gibts gar keinen konkreten befehl dafür?

Verfasst: 28.11.2006 19:32
von Gumfuzi
IMO nicht, aber wenn man mit einer Schliefe alle Files zusammenzählt, kommt ja das gleiche raus.

Befehle für die Größe einer Datei:
http://at.php.net/manual/de/function.ftp-size.php
http://at.php.net/manual/de/function.filesize.php

Verfasst: 28.11.2006 19:40
von ultracoder
aber das wär doch mal ne sinnvolle funktion für ne neue php version

Verfasst: 28.11.2006 20:11
von Miriam
Wieso wäre das eine sinnvolle Funktion.

Genauso "sinnvoll" wäre

Code: Alles auswählen

forum();
. :lol:

Verfasst: 28.11.2006 20:12
von ultracoder
was soll diese funktion forum() dann bringen?

Verfasst: 28.11.2006 20:19
von Jensemann
ultracoder hat geschrieben:aber das wär doch mal ne sinnvolle funktion für ne neue php version
Nein, wäre es nicht. Highlevel Funktionen implementiert man in seperaten Bibliotheken, wie PEAR oder eben in eigenen.