PHP – Klasör içinde istenen uzantıdaki dosyaları listelemek

Scriptimiz başlıktan da anlaşılabileceği üzere bir dizinin içerisinde sadece sizin belirlediğiniz uzantıdaki dosyaları listelemeye yarıyor (mp3, avi vb.). Mümkün mertebe basit ve anlaşılır tutmaya çalıştım, $uzanti = “mp3”; değişkenine listeletmek istediğiniz uzantıyı atamanız yeterli.

HTML sayfa başlangıcı:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1254">
<title>Egonomik.com :: PHP - Klasör içinde istenen uzantıdaki dosyaları listelemek</title>
<style type="text/css">
body {
    font-family: Arial;
    font-size: 12px; }

.title {
    background:#4A4A4A;
    padding: 4px;
    font-size: 13px;
    color: #FFFFFF; }

.satir1 {
    background: #F2F2F2;
    padding: 4px;
    font-family: Arial;
    font-size: 11px; }

.satir2 {
    background: #F8F8F8;
    padding: 4px;
    font-family: Arial;
    font-size: 11px; }
</style>   
</head>
<body>

php kodu:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php

$dizin = "./data/dosyalar";
$uzanti = "mp3"; //hangi uzantı?

//Uzantı alma fonksiyonu
function ext($text)  {
    $text = strtolower(pathinfo($text, PATHINFO_EXTENSION));
    return $text;  }

echo '<div class="title"><b>'.$uzanti.'</b> uzantılı dosyalar:</div>';

if ($handle = opendir("$dizin") or die ("Dizin acilamadi!")) {

    while (false !== ($file = readdir($handle))) {
    $filetype = ext($file);

        if(is_file($dizin."/".$file) && $filetype == "$uzanti") { //eger bir dosya ise ve bizim belirlediğimiz uzantıya sahipse

        $class = ($css % 2) ? "satir1" : "satir2"; // her satira farklı class

        echo '
        <div class="'
.$class.'"><a href="'.$dizin.'/'.$file.'">'.$file.'</a> </div>';

        $css++;

        }

    } //while end

    closedir($handle);

}

?>

safya sonu:

1
2
</body>
</html>

İlginizi Çekebilecek Diğer İçerikler

Facebook Yorumları

23 Yorum

Uyarı: Yorumlarda link kullanmayınız. Link içeren yorumlar otomatik olarak spam kabul edilmektedir.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir