1 / 28

Dosyaya Bilgi Yazmak ve Dosyadan Okumak

Dosyaya Bilgi Yazmak ve Dosyadan Okumak. Temel Dosya İşlemleri. Açmak ( okumak için , yazmak için …) Dosyadan okumak Dosyaya yazmak Dosyanın sonuna yazmak/okumak Dosyayı kapatmak. Temel Dosya Fonksyonları. Açmak/Kapatmak fopen, fclose Okumak fread, fgets, fgetss, fgetcsv, fgetc

teagan
Download Presentation

Dosyaya Bilgi Yazmak ve Dosyadan Okumak

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Dosyaya Bilgi Yazmak ve Dosyadan Okumak

  2. Temel Dosya İşlemleri • Açmak (okumak için, yazmak için …) • Dosyadan okumak • Dosyaya yazmak • Dosyanın sonuna yazmak/okumak • Dosyayı kapatmak

  3. Temel Dosya Fonksyonları • Açmak/Kapatmak • fopen, fclose • Okumak • fread, fgets, fgetss, fgetcsv, fgetc • Yazmak • fwrite, fputs, fputc, • Dosyada gezmek • rewind, fseek, ftell

  4. Fopen ile dosya açmak $fp = fopen ("ftp://user:passwd@example.com/dosya.txt", "w"); // ftp $fp = fopen ("http://www.php.net/", "r"); // http $fp = fopen ("c:\\data\\info.txt", "r"); // windows $fp = fopen ("/home/rasmus/file.gif", "wb"); //unix

  5. fopen Dosya Açma Modları • 'r' – sadece oku; işaretçi dosyanın başında • 'r+' – oku ve yaz; işaretçi dosyanın başında • 'w' – sadece yaz işaretçi dosyanın başında • 'w+' – oku ve yaz; işaretçi dosyanın başında • 'a' – sadece yazma; işaretçi dosyanın sonunda.Eğer dosya yoksa onu oluşturur. • 'a+' – yazma ve okuma; işaretçi dosyanın sonunda.Eğer dosya yoksa onu oluşturur.

  6. Fwrite fonksyonu int fwrite/fputs (int fp, string string, int uzunluk) Stringi fp dosyasına uzunluk kadar yazar //örnek <? $fd = fopen ("text.txt", "w"); if (! $fd) {echo “Yazamadı!"; exit; } fwrite($fd, " ", 100); fclose ($fd); ?>

  7. fread string fread (int fp, int x) fp dosyasaında x uzunluğunda karakter okur // bir kere de tüm dosyayı okur <? $dosyaAdi = "something.txt"; $fd = fopen ($ dosyaAdi, "r"); $contents = fread ($fd, filesize ($dosyaAdi)); echo nl2br("$contents"); fclose ($fd); ?>

  8. fgets string fgets (int fp, int x) fp’den 1 satırdaki x tane karakteri okur <? $fd = fopen ("text.txt", "r"); while (!feof ($fd)) { $okunan = fgets($fd, 4096); echo $okunan; } fclose ($fd); ?>

  9. fgetss string fgetss (int fp, int length) <> ile yazılmış html etiketlerini atlayarak okur <? $fd = fopen ("text.txt", "r"); while (!feof ($fd)) { $buffer = fgetss($fd, 500); echo $buffer."<br>"; } fclose ($fd); ?>

  10. Basic File Operations: fgetcsv array fgetcsv (int fp, int length,[ ayraç]) ayraçları atlayarak bir satırdaki karakterleri okur <? $fd = fopen ("csv.txt", "r"); while (!feof ($fd)) { list($fname, $lname) = fgetcsv($fd, 500); echo "$lname, $fname<br>"; } fclose ($fd); ?>

  11. Copy fonksyonu • <?php$file = 'example.txt';$newfile = 'example.txt.bak';if (!copy($file, $newfile)) {   echo “dosya kopyalanamadı...\n";else echo “dosya kopyalandı”}?>

  12. File I/O: Navigation in files • int rewind (int fp) • İmleci dosyanın başına getirir • int fseek (int fp, int offset [, int whence]) • İmleci istenen yere(ofset) getirir. • int ftell (int fp) • İmlecin yerini gösterir

  13. File I/O: OS File Operation • chmod — dosya modunu değiştirir • chown — dosyanın sahibini değiştirir • copy — dosyayı kopyalar • diskfreespace — Returns available space in directory • feof — Tests for end-of-file on a file pointer • file_exists — dosyanın olup olmadığını kontrol eder • filesize — dosyanın büyüklüğünü gösterir • filetype — dosya tipini gösterir • ftruncate — Truncates a file to a given length. • is_dir — klasör olup olmadığını söyler • is_executable — Tells whether the filename is executable • is_file — Tells whether the filename is a regular file • is_link — Tells whether the filename is a symbolic link • is_readable — Tells whether the filename is readable • is_writeable — Tells whether the filename is writeable • mkdir — klasor oluşturur • rmdir — klasor siler • tempnam — Creates unique file name • tmpfile — Creates a temporary file • unlink — Deletes a file

  14. Php ile önce htdocstaki klasörünüzün altına bir dosya açıp içine hoşgeldiniz yazınız. • Kullanıcı için bir form oluşturunuz ve kullanıcının girdiği ad,soyad, sifre, mail isimlerini virgullerle ayırarak bu dosyaya yazdırınız.Kullanıcı isimleri alt alta yazılacak. • Orn: • Ali,Aktas,şifre,aliaktas@yahoo.com Fatma,Dur,FatmaDur,Fatma@hotmail.com

  15. Bu dosyayı okuyan bir program yazınız. Dosyadaki herşeyi ekrana yazdıracak. • Bu dosyayı php copy fonksyonu ile D nin altına kopyalayınız.

  16. Temel işlemler • Fopen • Fread • Fwrite • Fgets • Fgetss • Fgetcsv • Fclose

  17. Dosya var mı? file_exits() • Bir dosyanın var olup olmadığını denetleyen bu fonksiyon, dosya varsa true/doğru, yoksa false/yanlış sonucunu verir. Örnek: • if ( file_exits ( "bir_dosya.txt" ) ) • print ("Dosya var!");

  18. Dosya mı, dizin mi? is_file() ve is_dir() • Kimi zaman klasörler de tıpkı dosyalar gibi adlandırılabilir. Bir dizinde gördüğümüz ismin gerçekten bir dosyaya ait olup olmadığını bu fonksiyonla sınarız. • Örnek: • if ( is_file ( "bir_dosya.txt" ) ) • print ("Bu bir dosyadır!");

  19. Dosya okunabilir mi? is_readable() • Programda kullanmaya karar vermeden önce bir dosyanın erişilebilir ve PHP tarafından okunabilir olup olmadığını sınayan bu fonksiyon, dosya okunabilir ise true/doğru, değilse false/yanlış sonuç verir. Örnek: • if ( is_readable ( "bir_dosya.txt" ) ) • print ("Bu dosya okunabilir!");

  20. Dosya yazılabilir mi? is_writable() • Programda kullanmaya karar vermeden önce bir dosyanın yazılabilir olup olmadığını sınayan bu fonksiyon, dosya yazılabilir ise true/doğru, değilse false/yanlış sonuç verir. Örnek: • if ( is_writable ( "bir_dosya.txt" ) ) • print ("Bu dosyaya yazılabilir!");

  21. Dosya boyutu: filesize() • Adını verdiğimiz dosyanın boyutunu byte olarak bildirir: Örnek: • print ("Dosyanın boyutu:"); • print filesize( "bir_dosya.txt" );

  22. Dosyaya son erişim tarihi: fileadate(), filemtime() ve filectime() • print ("Dosyanın son erişim tarihi:"); • $dosya_tarihi = fileadate( "bir_dosya.txt" ); • print ( " $dosya_tarihi " );

  23. Touch() yeni dosya oluşturma • <?php • $dosya_dizin = “C:"; • touch("$dosya_dizin/yeni_belge.txt"); • print ("yeni_belge adlı bir dosya oluşturuldu!"); • ?>

  24. Unlink() dosya silmek • <?php • $dosya_dizin =“C:”; • unlink ("$dosya_dizin/yeni_belge.txt"); • print ("yeni_belge adlı dosya silindi!"); • ?>

  25. Flock • <?php • $dosya_adi = "/inetpub/wwwroot/bir_dosya.txt"; • $dosya = fopen ($dosya_adi , 'w') or die ("Dosya açılamadı!"); • flock ( $dosya , 2); // dosyayı kilitle • $metin = "Bu satır dosyaya yazılacak: Merhaba Dünya!\n"; • fwrite ( $dosya , $metin ) ; • fputs ( $dosya , "Bu satır ise sonradan eklenecek\n" ) ; • flock ( $dosya , 3); //dosyayı kilidini aç • fclose ($dosya); • ?>

  26. 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

  27. Uygulama • Ziyaretçi defteri • Kullanıcı siteye girdiğinde isterse ziyaretçi defterine mesaj bırakabilecek(defter.txt) • Ya da eski mesajları okuyabilecek • Bir kopyala butonu koyunuz, bu butona tıklandığı zaman defter.txt dosyasının kopyasını yanına deftercopya.txt olarak alacak.

More Related