PHP DOSYA İŞLEMLERİ-Tüm İşlemler

PHP DOSYA İŞLEMLERİ-Dosya Oluşturma-Dosya Yazma-Dosya Silme-Dosya Okuma-Dizin Oluşturma-Dizin Silme

<?php
$dosya="1/ali.doc";
if(file_exists($dosya)){
echo "Bu dosyadan var";
}else{
 if(touch($dosya)){
 echo "Dosya yoktu oluşturuldu";
 }else{
 echo "Dosya oluşturulamıyor";
 }
}
?>

Dosya okuma: fgets(), fread() ve fgetc()

  • Açtığımız bir dosyanın içindeki yazıları çoğu zaman programımıza satır satır okuturuz.
  • PHP’ de bir dosyanın içeriğini satır satır okutmamızı fgets() fonksiyonu sağlar. Bu fonksiyona daha önce açılmış olan dosyanın işaret değişkenin adını ve okunmasını istediğimiz asgari byte olcusunu parametre olarak veririz.
    fgets() fonksiyonu verdiğimiz uzunluk ölçüsüne ulaşmadan once dosyada bir yeni satır işareti görürse, veya dosyanın sonuna ulaşırsa, okumaya son verir.
  • Bu fonksiyonu coğu zaman bir döngünün içinde kullanırız. Ancak döngünün hata vermemesi için, PHP’nin dosyanın sonuna ulaştığında döngüyü durdurmamız gerekir

Dosya Okuma

<?php
$dosya_dizin = "/xampp/htdocs/php";
if ($dosya = (fopen ("$dosya_dizin/ornek.txt" , 'r') ) ) {
	print ("Dosya açıldı!<br>");
	}
	else {
	print ("Dosya açýlamadı!");
	}
while ( ! feof ($dosya) ) {
	$satir = fgets ( $dosya, 1024 ) ;
	print ("$satir<br>");
	}
fclose ($dosya);
?>

Dosyayı Kilitleme
Bu program kişisel Web sunucuda önce varılan bir dosyayı acıyor; ve bu dosyanın işaretçisi olarak $dosya değişkenini kullanıyor.

Daha sonra bir while() döngüsü içinde bu değişkeni ve 1 KB (1024 byte) olcusunu parametre olarak vererek fgets() fonksiyonu ile dosyadan bir satır okutuyoruz.

fgets() fonksiyonundan donen bir satırlık metni, burada $satir değişkenine atıyoruz; ve daha sonra print() fonksiyonu ile bu satırı Browser penceresine gönderiyoruz.

Bu işlemi Internet’teki bir Web sunucuda uygulayabilmek için yazma/okuma izni bulunan ve Web sunucunun erişebileceği bir dizinin adını vermeniz gerekir.

Bu işlemin içinde yapıldığı while() döngüsünün devam şartı olarak kullandığımız ifadede yer alan feof() fonksiyonu bir dosyanın dosya-sonu (end-of-file) durumuna ulaşıp ulaşmadığını sınar.

PHP, her dosyanın sonunda yer alan eof (Ctrl-z, ^z) işaretine eristiği anda feof() fonksiyonu doğru/true değerini verir. while() döngüsü, feof() doğru değilken devam etmek üzere kurulmuş olduğu için, dosya sonuna ulaştığımızda döngü duracaktır.

Okuma işlemini durabilen bir döngüye bağlamazsak, fgets() PHP’nin bir programın sona ermesi için verilmiş varsayılan suresi doluncaya kadar dosyayı okumak isteyecektir

Dosyaya yazma ve ek yapma: fwrite() ve fputs()
$dosya = fopen( “bir_dosya.txt” , ‘w’ ) or die (“Dosya açılamıyor!”) ;
Ek amacıyla açmak icin ise
$dosya = fopen( “bir_dosya.txt” , ‘a’ ) or die (“Dosya açılamıyor!”) ;

Daha sonra yapılacak yazma ve ekleme işlemlerinin farkı,
‘w‘ parametresi ile acılan dosyaya yazma işlemi en başından başlar ve devam eder;
‘a‘ parametresi ile açılan dosyaya yazma islemi ise en sondan baslar 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.

Dosya Yazma Örneği

<?php
$dosya_adi = "/xampp/htdocs/php/ornek.txt";
$dosya = fopen ($dosya_adi , 'a') or die ("Dosya açılamadı!");
$metin = "Merhaba Dünya!\n";
fwrite ( $dosya , $metin ) ;
fputs (	 $dosya , "Bu satýr ise sonradan eklenecek\n" ) ;
fclose ($dosya);
?>

Dosyayı Silmek
PHP ile yapabileceğimiz önemli dosya işlemlerinin başında olmayan bir dosyayı oluşturmak ve olan bir dosyayı silmek gelir.
PHP`nin dosya oluşturma komutu touch() fonksiyonudur
PHP ile mevcut bir dosyayı silmek için unlink() fonksiyonunu kullanırız.

<?php
$dosya_dizin = "/xampp/htdocs/php/";
unlink ($dosya_dizin."/ornek1.txt");
print ("yeni_belge adlı dosya silindi!");
?>

Dosyayı Kilitleme

  • Web sunucusundaki dosyalarımızla sadece bir kişi işlem yapıyor olsa idi bir sorun olmazdı.
  • Ne var ki bir web sitesine aynı anda birden fazla kişi erişebilir ve dosyalarla işlem yapan programları çalıştırıyor olabilir. Bu, PHP`nin dosya işlemlerine engel olabilir.
  • Bu sebeple işlem için açacağımız bir dosyayı önce kilitlemek, yerinde bir önlem sayılır.
  • Bunu, flock() fonksiyonu ile yaparız; bu fonksiyona kilitlemek istediğimiz dosyanın işaret değişkeninin adını ve kilit türünü belirten endeks sayısını parametre olarak yazarız

Bu fonksiyon bir dosya açıldıktan sonra, ancak dosyadan veri okunmadan ya da dosyaya veri yazılmadan önce çağırılmalıdır.
Flock() kullanımı: bool flock (resource fp, int operation [ int $wouldblock] )
Burada, açık bir dosyadaki bir işaretçiyi ve ihtiyaç duyduğunuz kilit tipini temsil eden bir sabit değeri kullanmanız gerekir.
Kilit başarıyla uygulandıysa true, aksi hâlde false sonucunu verir.
İsteğe bağlı olan üçüncü parametre, kilidin uygulanması geçerli işlemin bloke edilmesine (beklemek zorunda kalmasına) neden olduğu takdir de true değerini içerir.

Bu fonksiyon ile kullanabileceğimiz endeks parametreleri şunlardır:
1 Paylaşım Diğer proseslerin dosyayı paylaşmalarına imkan verir
2 Tam Diğer proseslerin dosya ile işlem yapmasına engel olur
3 Serbest Dosyanın 1 veya 2 olan kilidini kaldırır

Dizin Oluşturma
PHP programlarımız gerektiğinde sunucunun yazma yetkisi verdiği Web’e acık kok ve alt-dizinlerde yeni dizinler oluşturabilir.
Bunu, mkdir() fonksiyonu ile yaparız. Bu fonksiyona oluşturulacak dizinin adı ve 8 tabanlı (octal) sayı cinsinden ve önüne bir sıfır konarak dizinin okuma/yazma/çalıştırma izinlerini belirten parametre verilir.

Örnek:
mkdir (“deneme”, 0777);

Burada yer alan 0777, bu dizinin herkes için okuma ve yazma izni olduğunu gösterir. Bu parametre sadece Unix işletim sisteminde çalışan sunucular için geçerlidir.
Dizin Silme
Rmdir(“yeni”);

660 defa okundu.

Bir Cevap Yazın

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

Powered by WordPress | Designed by: credit repair | Thanks to st louis web design, essay writing and fire glass
c# örnekleri , csharp örnekleri , c# örnek , C# Örnekleri , örnekleri c# , C# ÖRNEKLERİ
BTT Sınavları

C# Uygulamaları

Müdür Yardımcılığı Sınavına Hazırlık Sayfası

Müdür Yardımcılığı Çalışma Notları

C# Uygulamaları

Yazılı Soruları Php Dersleri Bilişim Teknolojileri Alanı Yazılı Soruları C# Dersleri C# Örnekleri