• Hesap Oluştur
  • Oturum Aç

PHP DE DOSYA OKUMA

kara_kutu    0

    • avatar

    kara_kutu  04-01-2016, Saat: 00:05

    Kredi:
    #1
    PHP De Dosya Okuma
    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 ölçüsünü parametre olarak veririz. fgets() fonksiyonu verdiğimiz uzunluk ölçüsüne ulaşmadan önce dosyada bir yeni satır işareti görürse, veya dosyanın sonuna ulaşırsa, okumaya son verir. Bu fonksiyonu çoğ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. fgets()fonksiyonunun okuyacağı satırı bir fonksiyona değer olarak verebilir ve daha sonra bu değeri programlarımızda kullanabiliriz. Örnek: 
     

    php:

    <?php 

    $dosya_dizin = "/inetpub/wwwroot/"; 

    if ($dosya = (fopen ("$dosya_dizin/bir_dosya.txt" , `r`) ) ) { 

    print ("Dosya açıldı!<br>"); 



    else { 

    print ("Dosya açılamadı!"); 



    while ( ! feof ($dosya ) ) { 

    $satir = fgets ( $dosya, 1024 ) ; 

    print ("$satir<br>"); 



    fclose ($dosya); 

    ?> 


    Bu program kişisel Web sunucuda önce varolan bir dosyayı açı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) ölçüsünü parametre olarak vererek fgets() fonksiyonu ile dosyadan bir satır okutuyoruz. fgets() fonksiyonundan dönen 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 eriştiğ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 süresi doluncaya kadar dosyayı okumak isteyecektir. 

    Kimi zaman dosyalarımızın içeriğini satır-satır okutmak yerine, kendi tayin edeceğimiz uzunlakta parçalar halinde okutmak isteriz. Bunu, fread() fonksiyonu ile sağlarız. Örnek: 

    php:

    <?php 

    $dosya_dizin = "/inetpub/wwwroot/"; 

    if ($dosya = (fopen ("$dosya_dizin/bir_dosya.txt" , `r`) ) ) { 

    print ("Dosya açıldı!<br>"); 



    else { 

    print ("Dosya açılamadı!"); 



    while ( ! feof ($dosya) ) { 

    $paragraf = fread ( $dosya, 1024 ) ; 

    print ("$paragraf<br>"); 



    fclose ($dosya); 

    ?> 


    fread() fonksiyonu da daha önce açılmış olan dosyanın işaret değişkenin adını ve okunmasını istediğimiz asgari byte ölçüsünü parametre olarak alır. fread() fonksiyonu verdiğimiz uzunluk ölçüsüne ulaşmadan önce dosyada bir yeni satır işareti görürse, veya dosyanın sonuna ulaşırsa, okumaya son verir. Bu fonksiyondan yararlanırken, verdiğiniz uzunluk ölçüsünün, almak istediğiniz metin parçasına uygun olduğunu sınamalısınız. fread(), bu ölçüye ulaştığında okumayı keser. Buradaki örneği 1024 byte ölçüsünü değiştirerek ve mesela 1, 2, 3 yaparak deneyebilir ve böylece vereceğiniz ölçünün okunan metnin uzunluğunu nasıl tayin ettiğini görebilirsiniz.
    Beğeni


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  PHP Dosya Yüleme (File Upload) kara_kutu 0 965 05-02-2016, Saat: 10:56
Son Yorum: kara_kutu
  DOSYA UZANTISI BULMA kara_kutu 0 702 04-01-2016, Saat: 00:26
Son Yorum: kara_kutu
  DOSYA IÇERIĞINI DEĞIŞKENE AKTARMA kara_kutu 0 731 04-01-2016, Saat: 00:25
Son Yorum: kara_kutu
  DOSYA BOYUTUNU HESAPLAMA kara_kutu 0 715 04-01-2016, Saat: 00:25
Son Yorum: kara_kutu
  PHP DE DOSYA KONTROLÜ kara_kutu 0 708 04-01-2016, Saat: 00:08
Son Yorum: kara_kutu
Konuyu Okuyanlar: 1 Ziyaretçi

Hızlı Menü: