Navigate / search

Php – fseek() ftell() rewind() – Dosyanın İstediğimiz Bölümünü Okuma

Dosya okuma işlemlerinde okuma işlemini tamamen olsada satır satır veya karakter karakter yapsakta, işlemlere hep en baştan başladık.Peki okuma yaparken dosya içinden istediğimizi bir yeri okumak için ne yapmalıyız.Bu işlemde kullanacağımız 3 fonkiyonumuz var.İlk önce bu fonksiyonları kısa kısa tanıyalım.

Ufak birde hatırlatma yapalım.Bu üç fonksiyonda file pointer olarak çalışır.

fseek():

Okuma işlemine başlayacağımız karakter sırasını bu komut ile belirleriz.Kısacası imlecimizi o karaktere almış oluruz.

fseek($dosyapointer,20)  // İmleci 20. karakterin önüne taşır.

ftell():

İmlecimizin o anda kaçıncı karaterin önünde olduğunu söyler.

echo tell($dosyapointer); // imlecimiz kaçıncı karakterin önündeyse o sayıyı verir.

rewind();

İmlecimizin bulunduğu pozisyonu sıfırlar.

rewind($dosyapointer); // İmlecimizi 0. pozisyona getirdi.

Şimdi bunları bir örnek ile inceleyelim.okuma işlemini yaparken fread komutunu kullanıp kaç karakter okuyacağımızı belirteceğiz.şimdi örnek txt dosyamızı oluşturalım.File pointer ile dosyamızı açalım.

dosya.txt

Satır 1
Satır 2
Satır 3
Satır 4
1
2
3
4
5
6
7
$dosyaadi="dosya.txt";
$dosyapointer=fopen($dosyaadi,"r") or die ("Dosya açılamadı.");
echo "İmlecimiz İlk Anda Şu Konumda  : ".ftell($dosyapointer)."<br>"; // imlecimizin konumunu verecek..
fseek($dosyapointer,3); // imlecimizi 3. karakterin önüne alacak.
$okunan=fread($dosyapointer,2); // 3. karakterden itbaren 2 karakter okur.
print "Okunan : ".$okunan;
echo "İmlecimiz Son Anda Şu Konumda  : ".ftell($dosyapointer)."<br>"; // imlecimizin konumunu verecek..

Unutmamanız gerek bişey var.bir sonraki satıra geçerken bir karakter fazla yazmayı unutmayın çünkü “yeni satır” işleminide bir karakter olarak algılıyor.

Php – file_exists() Dosyanın Varlığını Kontrol Etme

Dosya ve dizin işlemleri – file_exists() Dosyanın Varlığını Kontrol Etme

Dosyayı açmadan önce veya silmeden önce dosyanın olup olmadığını kontrol etmemiz gerekebilir.Bunun için file_exists() fonksiyonunu kullanacağız.

file_exists() fonksiyonu kullanıldığında belirtilen dosya var ise true yok ise false değerini gönderir.Hemen bir örnekle gösterelim.

1
2
3
4
5
if (file_exists("dosya.txt")){
       echo "Dosya Mevcut";
}else{
       echo "Dosya Bulunamadı";
}

İşte bu kadar.Dosya.txt isimli bir dosya var ise “Dosya Mevcut” yok ise “Dosya Bulunamadı” mesajını alacağız.