1~

Minter Coder's Blog

13-PHP File & IO (Dosya ve Input/Output Süreçleri)

13-PHP File & IO

PHP üzerinden dosyaları manipüle edebiliriz. Yani dosyalar üzerinde bazı işlemler (silme,oluşturma,okuma,değiştirme gibi) gerçekleştirebiliriz.

  1. Dosya Açma & Dosya Kapama

PHP üzerinden dosya açmak için fopen() fonksiyonu kullanılır.

  • Önemli bir nokta ise şudur; biz bir dosyayı açarken hangi mod'da açmak istiyoruz. Biz dosyayı açarken dosyayı okumak için mi yoksa yazmak için mi açıyoruz bunu belirlemek için mode özellikleri vardır.
  • Mod Açıklaması
  • r Dosyayı sadece okumak için kullanılır.
  • r+ Dosyayı okuma ve yazmak için kullanılır.
  • w Dosyayı sadece yazmak için kullanılır.Eğer ki bir dosya varsa onun içeriğini komple silip baştan oluşturur, yoksa eğer dosyayı oluşturur.
  • w+ Dosyayı okuma ve yazmak için kullanılır. Eğer ki bir dosya varsa onun içeriğini komple silip baştan oluşturur, yoksa eğer dosyayı oluşturur.
  • a Dosyayı sadece yazmak için kullanılır.Eğer ki bir dosya varsa onun içeriğini silmez,korur.Dosyanın sonuna ekleme yapmak için kullanılır.Dosya yoksa oluşturur.
  • a+ Dosyayı okuma ve yazmak için kullanılır.Eğer ki bir dosya varsa onun içeriğini silmez,korur.Dosyanın sonunan ekleme yapmak için kullanılır.Dosya yoksa oluşturur.
  • x Dosya oluşturmak için kullanılır. Eğer ki bir dosya varsa hata verir.
  • x+ Dosya oluşturur ve okuma yazma modunda kullanılır. Eğer ki bir dosya varsa hata verir.

Önemli olan bir nokta ise bir dosya açıldıktan sonra kapatılması gerekir. Çünkü arka tarafta bir process'te hep durup dosya açık ise üzerinde siz başka bir işlem yapamazsınız. Bunun için de fclose() fonksiyonunu kullanıyoruz.

fileio.txt dosyamız olsun.

Selam naber benim adım Minter Coder.
Nasılsın?
Php
C#

Örnek

<?php 
    // dosya oluşturma
    touch('test.txt');
    /* 
        Modlar : 
        r  : okumak için aç
        r+ : okumak ve yazmak için aç
        w  : yazmak için aç (dosya yok ise oluşturulur varsa içeriği silinir)
        w+ : okumak ve yazmak için aç
        a  : sonunan eklemek için aç
        a+ : okumak ve yazmak için aç

    */
    /* 
        fopen() - dosya açma
        fclose() - dosya kapama
        fwrite() - dosyaya yazma
        fread() - tek içeriği tek seferde okur
        fgets() - satır satır okur
        feof() - dosyanın sonunan gelinip gelinmediğini okur
        filesize() - dosya karakter sayısını dönderir
        unlink() - dosyayı siler
        file_exists(dosya_ismi) - dosya&dizin var mı yok mu kontrol eder.
    */

    // 1.örnek açma ve içerisine yazma
    $dosya = fopen('test.txt','w');
    $icerik = "PHP'yi öğrenip sitemi açacağım";
    fwrite($dosya,$icerik);
    fclose($dosya);

    // 2.örnek dosya içeriğini okuma
    $dosya = fopen("test.txt","r");
    echo fread($dosya,filesize("test.txt"));
    fclose($dosya);

    // 3.satır satır okuma
    $dosya = fopen("test.txt","a+");
    while(!feof($dosya)){
        echo fgets($dosya) . "<br>";
    }
    fclose($dosya);

    // 4.dosyayı silmek
    if (file_exists("test.txt"))
      unlink("test.txt");


?>

Dizin oluşturmak


<?php 
    /* 
        mkdir(dizin_adi,chmod)
        rmdir()
    */
    mkdir("test");
    rmdir("test");
?>

Dosya ve Dizinleri yeniden adlandırmak


<?php 
    // rename(onceki_path_ve_eski_isim,sonraki_path_ve_yeni_isim)
    rename("test","test2");
?>