Kali ini kita akan mempelajari cara membuka, membaca dan menutup file di server.
Section Artikel
Metode yang lebih baik untuk membuka file adalah dengan fungsi fopen()
. Fungsi ini dapat memberi lebih banyak opsi daripada fungsi readfile()
.
Kita akan menggunakan file teks, “webdictionary.txt”, seperti di bawah ini:
AJAX = JavaScript dan XML Asinkron
CSS = Lembar Gaya Bertingkat
HTML = Bahasa Markup Teks Hyper
PHP = PHP Hypertext Preprocessor
SQL = Bahasa Kueri Terstruktur
SVG = Grafik Vektor yang Dapat Diskalakan
XML = Bahasa Markup EXtensible
Parameter pertama dari fopen()
berisi nama file yang akan dibuka dan parameter kedua menentukan dalam mode mana file harus dibuka. Contoh berikut juga menghasilkan pesan jika fungsi fopen()
tidak dapat membuka file yang ditentukan:
Contoh :
<?php $myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!"); echo fread($myfile,filesize("webdictionary.txt")); fclose($myfile); ?>
Catatan: Fungsi fread()
dan fclose()
akan dijelaskan di bawah ini.
File dapat dibuka dengan salah satu mode berikut:
Modes | Deskripsi |
---|---|
r | Buka file untuk baca saja. Penunjuk file dimulai di awal file |
w | Buka file untuk menulis saja. Menghapus konten file atau membuat file baru jika tidak ada. Penunjuk file dimulai di awal file |
a | Buka file untuk menulis saja. Data yang ada dalam file dipertahankan. Penunjuk file dimulai di akhir file. Membuat file baru jika file tidak ada |
x | Membuat file baru untuk menulis saja. Mengembalikan FALSE dan kesalahan jika file sudah ada |
r+ | Buka file untuk membaca / menulis. Penunjuk file dimulai di awal file |
w+ | Buka file untuk membaca / menulis. Menghapus konten file atau membuat file baru jika tidak ada. Penunjuk file dimulai di awal file |
a+ | Buka file untuk membaca / menulis. Data yang ada dalam file dipertahankan. Penunjuk file dimulai di akhir file. Membuat file baru jika file tidak ada |
x+ | Membuat file baru untuk baca / tulis. Mengembalikan FALSE dan kesalahan jika file sudah ada |
Fungsi fread()
berfungsi untuk membaca dari file yang terbuka.
Parameter pertama fread()
berisi nama file yang akan dibaca dan parameter kedua menentukan jumlah byte maksimum untuk dibaca.
Kode PHP berikut membaca file “webdictionary.txt” sampai akhir:
fread($myfile,filesize("webdictionary.txt"));
Fungsi fclose()
digunakan untuk menutup file yang terbuka.
Merupakan praktik pemrograman yang baik untuk menutup semua file setelah menyelesaikannya. Kita tidak ingin file terbuka berkeliaran di server yang dapat menghabiskan sumber daya!
Fclose()
membutuhkan nama file (atau variabel yang menyimpan nama file) yang ingin kita tutup:
<?php $myfile = fopen("webdictionary.txt", "r"); // some code to be executed.... fclose($myfile); ?>
Fungsi fgets()
digunakan untuk membaca satu baris dari file.
Contoh di bawah ini mengeluarkan baris pertama dari file “webdictionary.txt”:
Contoh :
<?php $myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!"); echo fgets($myfile); fclose($myfile); ?>
Output :
Catatan: Setelah panggilan ke fungsi fgets()
, penunjuk file telah pindah ke baris berikutnya.
Fungsi feof()
dapat berfungsi untuk memeriksa apakah “end-of-file” (EOF) telah tercapai.
Fungsi feof()
berguna untuk melakukan perulangan melalui data yang panjangnya tidak diketahui.
Contoh di bawah ini membaca file “webdictionary.txt” baris demi baris, hingga akhir file tercapai:
Contoh :
<?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); ?>
Output :
Fungsi fgetc()
digunakan untuk membaca satu karakter dari sebuah file.
Contoh di bawah ini membaca file “webdictionary.txt” karakter demi karakter, hingga akhir file tercapai:
Contoh :
<?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); ?>
Output :
Catatan: Setelah panggilan ke fungsi fgetc()
, penunjuk file berpindah ke karakter berikutnya.