Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
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

  • GncArt adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    42 cevap - 13 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.
    • sharq adlı üyenin fotoğrafı sharq
      Teşekkür Ederim Peki cv Klasörün Boyutunu Bulabilirmiyiz?
      10 yıl önce yazılmış
    • GncArt adlı üyenin fotoğrafı 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.
      
      10 yıl önce yazılmış
    • GncArt adlı üyenin fotoğrafı GncArt
      Gelen değer KB yeine Byte olacak :) KB olarak yazdırmak istersende:
      echo "Klasör boyutu: ".($size/1024)." KB dir.";
      
      10 yıl önce yazılmış
    • sharq adlı üyenin fotoğrafı sharq
      filesize ile cv'nin içindeki dosyanın boyutunu almış olmazmıyız ben cv dizininin boyutunu öğrenmk istiyorum .s
      10 yıl önce yazılmış

Cevaplar

  • Frauzer adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    40 cevap - 37 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.
    • sharq adlı üyenin fotoğrafı sharq
      Örnek Kod Görebilirmiyim?
      10 yıl önce yazılmış
    • sharq adlı üyenin fotoğrafı sharq
      Örnek Kod Görebilirmiyim?
      10 yıl önce yazılmış