Wie kann ich meinen verbleibenden Webspace ermitteln?

Newcomer1

Mitglied
Hallo,
Hab schon so einiges durchsucht und werde nicht fündig.

Wie kann ich meinen verbleibenden Webspace ermitteln? mit disk_free_space gehts ja nicht.

Irgendwelche Links oder Scriptbeispiele?

Danke
 
Da du keinen Zugriff auf Shell Befehle hast (vermute ich zumindest mal) würde ich es so angehen:

Deinen Gesamtspeicherplatz kennst du ja.
Dann alle Ordner rekursiv durchlaufen und alle Dateigrößen zählen.

Alles zusammenzählen, vom Gesamtspeicherplatz abziehen und fertig ;)

Dürfte relativ speicherfressend sein und auch rechenintensiv, je nach Datenmenge.
 
Das ist es ja. Ich will halt nur, dass da dann z.B. steht:
"Es sind *** MB frei."


Wie kann ich das unkompliziert realisieren? Es würde mir auch ein Freeware Script weiterhelfen. Ich will mir nicht zuviele Umstände machen, da ich dafür nix bezahlt bekomme und das aus reiner Gefälligkeit für einen Freund mache.

Danke
 
Mal eben einfach so ist da nichts zu machen, das erfordert viel Aufwand, für einen relativ geringen Nutzen, meiner Meinung nach.
 
Hallo,

so ein riesiger Aufwand ist das nun auch wieder nicht:
PHP:
<?php

function dirsize($path) {
	$size = 0;
	foreach (glob($path . '/{,.}*', GLOB_BRACE) as $entry) {
		if (preg_match('~/\.\.?$~', $entry)) continue;
		$size += is_dir($entry) ? dirsize($entry) : filesize($entry);
	}
	return $size;
}

$total = 50*1024*1024; // 50 MiB
$remaining = $total - dirsize('/pfad/zum/heimverzeichnis');

echo $remaining . ' Bytes frei.';

?>
Die Speicher- und Laufzeitkomplexität dürfte sich dabei in Grenzen halten. Am meisten Zeit werden vermutlich sowieso die Zugriffe auf die Festplatte brauchen.

Grüße,
Matthias
 
Lokal braucht das Skript bei mir ca. 4.5 Sekunden (105MB Daten)

Auf meinem Webspace: 31.2 Sekunden (ca. 8GB Daten)

Sofern man es zwischenspeichert ist der Aufwand doch erträglich...

Und ich merke, dass ich mich mit glob auseinandersetzen sollte ;)

Entschuldigung für meinen Pessimismus...
 
Also ich kriege bei dem Script oben folgende Fehlermeldung

Warning: glob() expects parameter 2 to be long, string given in /mnt/am1/02/521/00000006/htdocs/php/speicher.php5 on line 5

Warning: Invalid argument supplied for foreach() in /mnt/am1/02/521/00000006/htdocs/php/speicher.php5 on line 5

Woran kann das liegen ?
 
Zurück