PHP Dosyası Aç/Oku/Kapat
Bu bölümde size sunucudaki bir dosyayı nasıl açacağınızı, okuyacağınızı ve kapatacağınızı öğreteceğiz.
PHP Açık Dosya - fopen()
Dosyaları açmak için daha iyi bir yöntem, fopen()
işlevdir. Bu işlev size işlevden daha fazla seçenek sunar readfile()
.
Dersler sırasında "webdictionary.txt" metin dosyasını kullanacağız:
AJAX = Asynchronous JavaScript and XML
CSS = Cascading Style Sheets
HTML = Hyper Text Markup Language
PHP = PHP Hypertext Preprocessor
SQL = Structured Query Language
SVG = Scalable Vector Graphics
XML = EXtensible Markup Language
İlk parametresi fopen()
açılacak dosyanın adını, ikinci parametresi ise dosyanın hangi modda açılacağını belirtir. Aşağıdaki örnek ayrıca fopen() işlevi belirtilen dosyayı açamıyorsa bir mesaj oluşturur:
Örnek
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
echo fread($myfile,filesize("webdictionary.txt"));
fclose($myfile);
?>
İpucu: ve işlevleri aşağıda fread()
açıklanacaktır fclose()
.
Dosya aşağıdaki modlardan birinde açılabilir:
Modes | Description |
---|---|
r | Open a file for read only. File pointer starts at the beginning of the file |
w | Open a file for write only. Erases the contents of the file or creates a new file if it doesn't exist. File pointer starts at the beginning of the file |
a | Open a file for write only. The existing data in file is preserved. File pointer starts at the end of the file. Creates a new file if the file doesn't exist |
x | Creates a new file for write only. Returns FALSE and an error if file already exists |
r+ | Open a file for read/write. File pointer starts at the beginning of the file |
w+ | Open a file for read/write. Erases the contents of the file or creates a new file if it doesn't exist. File pointer starts at the beginning of the file |
a+ | Open a file for read/write. The existing data in file is preserved. File pointer starts at the end of the file. Creates a new file if the file doesn't exist |
x+ | Creates a new file for read/write. Returns FALSE and an error if file already exists |
PHP Okuma Dosyası - fread()
İşlev fread()
, açık bir dosyadan okur.
öğesinin ilk parametresi fread()
okunacak dosyanın adını içerir ve ikinci parametre okunacak maksimum bayt sayısını belirtir.
Aşağıdaki PHP kodu "webdictionary.txt" dosyasını sonuna kadar okur:
fread($myfile,filesize("webdictionary.txt"));
PHP Dosyayı Kapat - fclose()
İşlev fclose()
, açık bir dosyayı kapatmak için kullanılır.
Tüm dosyaları bitirdikten sonra kapatmak iyi bir programlama uygulamasıdır. Sunucunuzda dolaşan açık bir dosyanın kaynakları tüketmesini istemezsiniz!
fclose()
Kapatmak istediğimiz dosyanın adını (veya dosya adını tutan bir değişkeni) gerektirir :
<?php
$myfile = fopen("webdictionary.txt", "r");
// some code to be executed....
fclose($myfile);
?>
PHP Tek Satır Okuma - fgets()
İşlev fgets()
, bir dosyadan tek bir satır okumak için kullanılır.
Aşağıdaki örnek, "webdictionary.txt" dosyasının ilk satırını verir:
Örnek
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
echo fgets($myfile);
fclose($myfile);
?>
Not: İşlev çağrısından sonra fgets()
dosya işaretçisi bir sonraki satıra geçmiştir.
PHP Dosya Sonunu Kontrol Et - feof()
İşlev feof()
, "dosya sonu"na (EOF) ulaşılıp ulaşılmadığını kontrol eder.
İşlev feof()
, bilinmeyen uzunluktaki veriler arasında döngü yapmak için kullanışlıdır.
Aşağıdaki örnek, dosyanın sonuna ulaşılana kadar "webdictionary.txt" dosyasını satır satır okur:
Örnek
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
// Output one line until end-of-file
while(!feof($myfile)) {
echo fgets($myfile) . "<br>";
}
fclose($myfile);
?>
PHP Tek Karakter Okuma - fgetc()
İşlev fgetc()
, bir dosyadan tek bir karakter okumak için kullanılır.
Aşağıdaki örnek, dosyanın sonuna ulaşılana kadar "webdictionary.txt" dosyasını karakter karakter okur:
Örnek
<?php
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");
// Output one character until end-of-file
while(!feof($myfile)) {
echo fgetc($myfile);
}
fclose($myfile);
?>
Not: İşlev çağrısından sonra fgetc()
dosya işaretçisi bir sonraki karaktere geçer.
PHP Dosya Sistemi Referansını Tamamlayın
Dosya sistemi işlevlerinin eksiksiz bir referansı için eksiksiz PHP Dosya Sistemi Referansımıza gidin .