Php Dosya İşlemleri

PHP ile dizin işlemleri sayesinde yeni dizinler oluşturabilir, dizinleri taşıyabilir, yeniden adlandırabilir, silebilir ve içinde neler olduğunu gösterebiliriz. Web tabanlı dosya yöneticisi gibi bir yazılım yapmak ya da dosya upload çalışmalarına girişmek için öğrenmemiz gereken konulardan bir tanesi olan dizin işlemleri sayesinde tüm dosya yönetimi olaylarına değinmiş olacağız.

Yeni bir dizin oluşturmak

Yeni bir klasör oluşturmak şeklinde de değerlendirebileceğimiz bu olayı mkdir() fonksiyonu sayesinde gerçekleştiriyoruz . Bir parametre alır, istersek 2. parametre ile dosya CHMOD değerini belirleyebiliriz.

mkdir('dosyaismi');

Yukarıdaki örneği çalıştırdığımızda çalıştırdığımız dizinin içerisinde dosyaismi adında yeni bir klasör oluşturmuş oluruz.Eğer oluşturacağımız yeni dizinin CHMOD değerinide ifade etmek isteyecek olursak 2. parametreyi devreye sokuyoruz. Eğer 2. Parametreyi kullanmazsak varsayılan değeri “0777” yani tüm izinleri verilmiş durumda olur.

mkdir('yenidizin', '0655');

Bu örnekte de yenidizin adında bir dizin oluşturup 0655 CHMOD değeri vererek yazma iznini iptal etmiş olduk.

PHP ile bir dizini silmek

Php ile bir dizini silmek için rmdir() fonksiyonu kullanılır. Bir dizini silmek istiyorsak şayet , dizinin içerisinin boş olduğundan emin olmamız gerekir.Zira dizinin içi dolu olursa hata alırız. Dizini unlink() fonksiyonu ile temizlememiz , sonra silmemiz gerekiyor.

rmdir('yenidizin');

Yukarıdaki kodun yaptığı işlev “yenidizin” dizinini silmek olacaktır.

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

Php ile bir dosyayı taşımak ya da adını değiştirmek istersek rename() fonksiyonunu kullanmamız gerekir.Aslında ikisi de aynı işleve tekabül ediyor. Bu rename() fonksiyonu iki parametre ile çalışır. İlk parametre taşıyacağımız ya da adını değiştireceğimiz dizinin ismi ; ikincisi ise dizinin yeni yolu.

rename('eskidizin', 'yenidizin');

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', 'manzara.jpg');

Bu çalışmada da resim.jpg adındaki dosyamızın adını manzara.jpg olarak değiştirecektir. Yine benzer şekilde ikinci parametrede farklı bir dizin belirttiğimizde dosyayı o dizine taşıyacaktır.

rename('resim/imagen1.jpg', 'images/resim.jpg');

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

PHP ile dizin içerisindekileri okuma

Bir dizin içerisindeki tüm dosyaları okumak için temelde iki fonksiyona ve bir döngüye (while) ihtiyacımız var.

İlk olarak opendir() fonksiyonu ile aynı fopen() ile dosya açmadaki gibi dizini açarız. Ardından dizini bağlantısını yüklediğimiz değişkeni readdir() fonksiyonu ve while döngüsü ile bağlayıp tüm dizinin içeriğine ulaşırız.

$dizin = opendir('dosyalar');
while($dosya = readdir($dizin)) {
   echo $dosya . ' <br/>';
}

Burada tek eşittir kullanılması dikkat çekmiş olabilir. Nedeni ise $dosya değişkenine bütün dizindeki dosyaları tek tek okutması. Bu sayede aşağıdaki gibi tüm dosyaları tek tek okuyabiliriz.

.
..
resim.jpg
dosya.rar
müzik.mp3

Yukarıdaki şekilde tüm formattaki dosyaları yazacaktır. Burada ilk çıkan . ve .. işaretleri bir alt dizini ve şuan ki dizini ifade eder. İstersek bir if koşulu ile sorunu halledip sadece dizinlere erişebiliriz.

Yararlandığım kaynaklar

www.phpr.org/php-dizin-islemleri/

www.phpkodlari.com/php-mysql/php-dizin-islemleri/

AuthorHarun ALP

Bu adam , bilgi sahibi olduğu konularda makalelerini daha bilgilendirici hale getirip görseller ile süslüyor ve seo uyumlu makaleler ortaya çıkarıyor. Güncel webmaster konularını işlemekten keyif alıyor ve genelde her makale aslında bir sorunun çözümü niteliğinde.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir