Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
karakter kaldı

PHP DOSYA DİZİN İŞLEMİ

merhabalar arkadaşlar bn php ile bir klasördeki dosyalarının sayısını klaösrlerin sayısını ve o klasörün toplam boyutunu nasıl bulabilirim?
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap Doğru Cevap

  • Avatar of GncArt
    6 ay önce
    cevap - soru
    PHP de Glob kullanımı ile dizindeki verileri listeleme:
    $dizin = "cv/.pdf";
    /* Bunun anlamı cv klasöründeki sadece .pdf uzantıları listeleesini söylüyoruz. Eğer uzantı gözetmeksizin herşeyi listelesin isterseniz:
    $dizin = "cv/*";
    yazmalısınız. */
    	 
    foreach(glob($dizin) as $dosya){
    	 
      if(is_file($dosya)){
    	 
        echo 'CV Dosya Adı: '.$dosya.' - <a href="'.$dosya.'">CV yi İndir..</a><br />';
    	 
      }
    	 
    }
    


    If içinde okunan dosyuanın gerçekten bir dosya olup olmadığını kontrol ettim. Bu şekilde çok kolay işlemler yapabilirsin. Glob gerçekten çok iyi bir fonksiyon.
    • Avatar of sharq sharq
      Teşekkür Ederim Peki cv Klasörün Boyutunu Bulabilirmiyiz?
      6 ay önce yazılmış
    • Avatar of GncArt GncArt
      Klasör boyutunu veren hazır bir fonksiyon yok malesef ama dosyaların boyutunu veren bir fonksiyon mevcut. Bende oradan mantıkla, nasıl olsa glob ile tüm dosyalara ulaşabiliyoruz. Bu yüzden her bulunan dosyanın boyutunu sabit bir değişne üzerine ekleyerek toplam bir sonuç buldum. Bu sonuç bize klasörün boyutunu verecektir.

      Tabiki dikkat etmen gereken nokta hatalı sonuç almaman için "cv/*" şeklinde tüm dosyaları seçmelisin. Yukarıdaki kodu bu şekilde düzenledim:

      $dizin = "cv/*";
      	// Bunun anlamı cv klasöründeki sadece .pdf uzantıları listeleesini söylüyoruz. Eğer uzantı gözetmeksizin herşeyi listelesin isterseniz: $dizin = "cv/*"; yazmalısınız.
      	
      	$size = 0;
      	// Klasör boyutu için başlangıç değeri.
      		 
      	foreach(glob($dizin) as $dosya){
      		 
      	  if(is_file($dosya)){
      	  
      		$size = $size + filesize($dosya);
      		// Bulunan her dosyanın boyutunu $size değişkenine aktardık.
      		 
      		echo 'CV Dosya Adı: '.$dosya.' - <a href="'.$dosya.'">CV yi İndir..</a><br />';
      		 
      	  }
      		 
      	}
      	
      	echo "Klasör boyutu: ".$size." KB dir.";
              // Toplam klsör boyutunu yazdırdık.
      
      6 ay önce yazılmış
    • Avatar of GncArt GncArt
      Gelen değer KB yeine Byte olacak :) KB olarak yazdırmak istersende:
      echo "Klasör boyutu: ".($size/1024)." KB dir.";
      
      6 ay önce yazılmış
    • Avatar of sharq sharq
      filesize ile cv'nin içindeki dosyanın boyutunu almış olmazmıyız ben cv dizininin boyutunu öğrenmk istiyorum .s
      6 ay önce yazılmış

Cevaplar

  • Avatar of Frauzer
    6 ay önce
    41 cevap - 32 soru
    Glob fonksiyonu ile dizindeki dosyaları çekersin.Zaten glob onları dizi'ye alacak.Döngüde sayac kullanırsın.php manual'i incelemeni tavsiye ederim.
    • Avatar of sharq sharq
      Örnek Kod Görebilirmiyim?
      6 ay önce yazılmış
    • Avatar of sharq sharq
      Örnek Kod Görebilirmiyim?
      6 ay önce yazılmış