PHP Dizin İşlemleri Nasıl Yapılır?

dizin işlemleri, kodlama, php dersleri, php döngüler, php öğren, php yazılım, programlama yazılımı, while döngüsü

PHP dizin işlemleri sayesinde yeni dizinler oluşturabilir, dizinleri taşıyabilir, yeniden adlandırabilir, silebilir ve içinde neler olduğunu gösterebiliriz. Dizin işlemleri sayesinde tüm dosya yönetimi olaylarına el atmış oluruz ve dizin olayları için de izin ve yetkiye ihtiyacımız olacak.

PHP Dizin İşlemleri: Dizinleri Oluşturma, Klasörleri Kopyalama, Dosyaları Silme ve Daha Fazlası

PHP, sunucu taraflı bir programlama dili olduğu için dosya sistemi işlemlerini gerçekleştirmek için bir dizi yerleşik işlev içerir. Bu makalede, PHP’de dizin işlemleri yapmayı öğreneceksiniz. Dizinlerin oluşturulması, klasörlerin kopyalanması, dosyaların silinmesi ve daha fazlası gibi temel işlemleri ele alacağız.

PHP ile dizinlerin ya da dosyaların adını değiştirme ve taşıma

Bu işi rename() fonksiyonu ile yapıyoruz. İki parametre ile çalışan bu fonksiyonun ilk parametresine taşıyacağımız ya da değiştireceğimiz, dosya ya da dizin adın, ikinci parametreye ise taşıyacağımız yolu yazarız.

	
rename('önce', 'sonra');

Yukarıdaki örnek çalıştığında önce adında klasörü sonra adında değiştirir.

Aynı şekilde dizin yerine bir dosya uzantısı ve adı belirttiğimizde bu sefer değiştirme işini dosya üzerinde yapacaktır.

rename('resim.jpg', 'portre.jpg');

Bu çalışmada da resim.jpg adındaki dosyamızın adını portre.jpg olarak değiştirecektir.

Yine benzer şekilde ikinci parametrede farklı bir dizin belirttiğimizde dosyayı o dizine taşıyacaktır.

rename('resim/bir.jpg', 'portre/resim.jpg');

Burada resim klasörü içindeki bir.jpg dosyasını portre klasörüne taşıyıp adını resim.jpg olarak değiştirmiş olduk.

Dizin Oluşturma

PHP ile bir dizin oluşturmak için mkdir() işlevini kullanabilirsiniz. Bu işlev, yeni bir dizin oluşturmak için dosya sistemi işlemlerini gerçekleştiren bir işlevdir. Aşağıdaki örnekte, “images” adında bir dizin oluşturacağız:

if (!file_exists('images')) {
    mkdir('images', 0777, true);
}

Yukarıdaki kod, “images” adında bir dizin oluşturur. file_exists() işlevi, “images” dizininin zaten var olup olmadığını kontrol eder. Eğer dizin yoksa, mkdir() işlevi kullanılarak dizin oluşturulur.

mkdir() işlevinin ilk parametresi oluşturulacak dizinin adıdır. İkinci parametre, dizinin izinleridir. 0777 izinleri, dizinin okunabilir, yazılabilir ve çalıştırılabilir olduğu anlamına gelir. Son parametre, dizinin alt dizinleri de dahil olmak üzere tüm yolun oluşturulup oluşturulmadığını kontrol eder. Bu nedenle, bu parametre “true” olarak ayarlandı.

Dizinleri Kopyalama

PHP’de bir dizini kopyalamak için copy() işlevini kullanabilirsiniz. Bu işlev, bir dizindeki tüm dosyaları ve alt dizinleri kopyalamak için kullanılır. Aşağıdaki örnekte, “images” dizinini “backup” dizinine kopyalayacağız:

if (file_exists('images')) {
    if (!file_exists('backup')) {
        mkdir('backup', 0777, true);
    }
    $result = copy('images', 'backup');
}

Yukarıdaki kod, “images” dizininin var olup olmadığını kontrol eder. Dizin varsa, “backup” dizinini oluşturur. Ardından copy() işlevi kullanılarak “images” dizini “backup” dizinine kopyalanır.

copy() işlevi, kopyalama işleminin başarılı olup olmadığını belirten bir değer döndürür. Başarılıysa, değer “true” olur.

PHP Dizin Oluşturma | dogrukod.com

Dosyaları Silme

Varolan dizinleri silmek için rmdir() fonksiyonunu kullanırız. Sileceğimiz dizininin içerisi boş olmak zorundadır. Eğer dolu bir dizini bu şekilde silmeye kalkışırsak php hata gösterecektir. Dolu bir dizini olduğu gibi silmek istiyorsak  unlink() fonksiyonunu kullanarak tüm içeriği silmemiz gerekiyor.

PHP’de dosya veya dizinleri silmek için unlink() ve rmdir() işlevlerini kullanabilirsiniz. unlink() işlevi, bir dosyayı silmek için kullanılırken, rmdir() işlevi bir dizini silmek için kullanılır. Aşağıdaki örnekte, “test.txt” adlı bir dosyayı silmek için unlink() işlevini kullanacağız:

if (file_exists('test.txt')) {
    unlink('test.txt');
}

Yukarıdaki kod, “test.txt” adlı dosyanın var olup olmadığını kontrol eder. Dosya varsa, unlink() işlevi kullanılarak dosya silinir.

Dizinleri silmek için rmdir() işlevini kullanabilirsiniz. Aşağıdaki örnekte, “backup” adlı dizini silmek için rmdir() işlevini kullanacağız:

if (file_exists('backup')) {
    rmdir('backup');
}

Yukarıdaki kod, “backup” adlı dizinin var olup olmadığını kontrol eder. Dizin varsa, rmdir() işlevi kullanılarak dizin silinir. Ancak, rmdir() işlevi yalnızca boş dizinleri silebilir. Dolayısıyla, dizinde dosya veya alt dizin varsa, rmdir() işlevi hata verecektir.

Dosya ve Dizinleri Listeleme

PHP’de dosya ve dizinleri listelemek için scandir() işlevini kullanabilirsiniz. Bu işlev, belirtilen dizindeki tüm dosya ve dizinleri bir dizi olarak döndürür. Aşağıdaki örnekte, “images” dizinindeki tüm dosya ve dizinleri listelemek için scandir() işlevini kullanacağız:

php
if (file_exists('images')) {
    $contents = scandir('images');
    print_r($contents);
}

Yukarıdaki kod, “images” adlı dizinin var olup olmadığını kontrol eder. Dizin varsa, scandir() işlevi kullanılarak dizinin içeriği bir dizi olarak döndürülür. Ardından, print_r() işlevi kullanılarak dizi içeriği ekrana yazdırılır.

PHP ile Dizin Okuma | dogrukod.com

Dosya ve Dizinleri Gezinme

PHP’de dosya ve dizinlerde gezinmek için opendir() ve readdir() işlevlerini kullanabilirsiniz. Bu işlevler, belirtilen dizindeki dosya ve dizinleri tek tek okumak için kullanılır. Aşağıdaki örnekte, “images” dizinindeki tüm dosya ve dizinleri listelemek için opendir() ve readdir() işlevlerini kullanacağız:

if (file_exists('images')) {
    $dir_handle = opendir('images');
    while (false !== ($file = readdir($dir_handle))) {
        echo $file . "\n";
    }
    closedir($dir_handle);
}

Yukarıdaki kod, “images” adlı dizinin var olup olmadığını kontrol eder. Dizin varsa, opendir() işlevi kullanılarak dizin işaretçisi alınır.

Bu makalede, PHP’de dosya ve dizin işlemlerini yapmak için kullanabileceğiniz temel işlevleri ele aldık. file_exists(), is_file(), is_dir(), mkdir(), rmdir(), unlink() işlevleri ile dosya ve dizin oluşturma, silme, var olup olmadığını kontrol etme gibi işlemleri gerçekleştirebilirsiniz. Ayrıca, dosya ve dizinleri listelemek ve gezinmek için scandir(), opendir() ve readdir() işlevlerini kullanabilirsiniz. Bu işlevlerin yanı sıra, PHP’nin diğer dosya ve dizin işlemleri için de birçok işlevi bulunmaktadır. Bu işlevleri kullanarak, PHP’de dosya ve dizin işlemleri yaparken işinizi kolaylaştırabilir ve daha verimli bir şekilde çalışabilirsiniz.

Bir cevap yazın

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