PHP Dosya Boyutu & Klasör Boyutu

PHP Dosya Boyutu & Klasör Boyutu

Php dosya yükleme (file upload) sırasında veya yüklenmiş olan bir dosya için php dosya boyutu öğrenme (filesize fonksiyonu) konusunu ve de php klasör boyutu öğrenme (dizin boyutu) işlemini göstereceğim.

Php dosya yükleme işleminde input file nesnesinin name özelliğine girilen isim yazılmalı. Yüklenecek olan dosyanın byte cinsinden boyutunu verir

$_FILES['dosya_name']['size'] 

Sucunuda yüklenmiş olan dosyanın yolu filesize fonksiyonu parametresine yazılmalı. Dikkat: Url yolu değil, dizin yoluyla yazılmalı. Yüklenmiş olan dosyanın byte cinsinden değerini verir. Filesize() fonksiyonu ile dosya boyutunu öğrenme işlemi aşağıdaki gibidir.

filesize ('dosya_name.txt') 

Formatlı bir şekilde php dizin boyutunu hesaplamak ve geri döndürmek. Fonksiyonun işlevi: Klasör içerisindeki dosyaları dizi olarak çekip döngü halinde dosya boyutları toplanıyor. Bu boyuta göre dosya formatı belirleniyor ve dosya boyutu ile beraber dosya formatını geri döndürüyor.

function format_size($dir){ 
	$size = 0;
	$file = glob($dir.'/*', GLOB_NOSORT);
	foreach ($file as $each) {
		$size += is_file($each) ? filesize($each) : folderSize($each);
	}
	$sizes = array(' Bytes', ' KB', ' MB', ' GB', ' TB', ' PB', ' EB', ' ZB', ' YB');
	if ($size == 0) {
		return('0'); 
	}else{
		return (round($size/pow(1024, ($i = floor(log($size, 1024)))), 2) . $sizes[$i]); 
	}
}
echo format_size('cache') // kullanımı

Aşağıdaki listeden PHP dosya ve dizin fonksiyonları ile alakalı diğer yazılarıma ulaşabilirsiniz.

Yorum Yap
0 Yorum yapan