Php Dosya ve Dizin Listeleme

Php’de kendinize özel bir script kodlarken veya kod yazarken bir yerlerde çok özel bir durumla karşılaşabilirsiniz. Bir klasörün içinde bulunan tüm “dosya ve klasörlerin” listesi size lazım olabilir. WordPress kullananlar bunu çok daha iyi bilirler. WordPress’te kullanmak istediğiniz bir temayı indirip “themes” klasörüne atarsınız ve wordpress’in admin panelinden “temalar” kısmına baktığınızda, atılan temanın orda olduğunu fark edersiniz.

Yani WordPress “themes” klasörünün içini okuyor demektir. Yani bu klasörün içine hangi temayı atarsanız atın, WordPress bu klasörün içindeki tüm temaları otomatik olarak okuyacaktır. İşte tam’da burada php dosya ve dizin listeleme işlemi yapılıyor.

Başka bir örnek daha verelim : Misal; sosyal medya iconset’leri oluşturup bunu klasörler şeklinde “sosyalmedya” isminde bir klasör oluşturup içine atabilir ve bunu admin panelinden yönetebilirsiniz. Böylelikle siteniz için birbirinden farklı sosyal medya icon’larını tema şeklinde kullanmış olursunuz. Yapmanız gereken “sosyalmedya” klasörünün içini okumak olacaktır.

Şimdi gelin size php’de bir klasörün içindeki herşeyi nasıl listeleyebiliriz bunu gösterelim. Okuyacağımız klasör’ümüz “themes” klasörü olsun.

<?php

$dizin = ("wp-contents/themes");
 
$dizin_ac = opendir($dizin);
 
while($okundu = readdir($dizin_ac)){

    if(is_dir($okundu)){
       echo "Tema Adı : $okundu";
    }
 
}
 
closedir($dizin_ac);

Yukarıdaki kodlarımızda “themes” klasörünü açtık ve içindeki “dosya ve klasörleri” okuduk. Eğer okunanlar arasında “klasörler” varsa bunlar tema olacağı için ekrana yazdırdık. is_dir(); fonksiyonunu kullanarak okunan değerlerin klasörmü olup olmadığını öğrenebiliriz.

Uygulamamızda kodları kullanırken açıklamalı bir şekilde işlem gerçekleştirdiğimiz için, daha anlaşılır bir anlatım şekli benimsediğimizi düşünüyorum. Kafanızda soru işaretleri olduğu yerler varsa veya anlamadığınız bir yer var ise yorum yaparak bizlerden destek alabilirsiniz.

Translate »