Dosyaya yazma ve ek yapma: fwrite() ve fputs()
Bir dosyaya yazma veya ek yapma, PHP açısından aynı işlemdir; sadece
dosyaların açılışında fark vardır. Hatırlayacaksınız, bir dosyayı yazmak
amacıyla açmak için:
$dosya = fopen( "bir_dosya.txt" , 'w' ) or die ("Dosya açılamıyor!") ;
ek amacıyla açmak için ise
$dosya = fopen( "bir_dosya.txt" , 'a' ) or die ("Dosya açılamıyor!") ;
kodunu yazmamız gerekir. Dana sonra yapılacak yazma ve ekleme
işlemlerinin farkı, 'w' parametresi ile açılan dosyaya yazma işlemi en
başından başlar ve devam eder; 'a' parametresi ile açaılan dosyaya
yazma işlemi ise en sondan başlar ve devam eder.
PHP'nin bir dosyaya metin yazdırma fonksiyonları olan fwrite() ve
fputs() aynı biçimde yazılır ve aynı işlevi yerine getirirler;
aralarında kesinlikle fark yoktur. Örnek:
<?php
$dosya_adi = "/inetpub/wwwroot/bir_dosya.txt";
$dosya = fopen ($dosya_adi , 'w') or die ("Dosya açılamadı!");
$metin = "Bu satır dosyaya yazılacak: Merhaba Dünya!\n";
fwrite ( $dosya , $metin ) ;
fputs ( $dosya , "Bu satır ise sonradan eklenecek\n" ) ;
fclose ($dosya);
?>
Bu programı çalıştırdığınızda, bir_dosya.txt adlı dosyada
mevcut bütün içerik silenecek ve yerini $metin değişkeninin içerdiği "Bu
satır dosyaya yazılacak: Merhaba Dünya!" yazısı ile "Bu satır ise
sonradan eklenecek" cümlesi alacaktır. Her iki metnin sonunda da yeni
satır işareti bulunduğuna dikkat edin. Bu programda dosya açma
kıomutundaki 'w' parametresini siler, yerine 'a' yazarsanız, bu
metinlerin dosyanın içeriğine eklendiğini görebilirsiniz.