Dalam pengembangan aplikasi web, seringkali kita memerlukan cara untuk menyimpan dan mengelola data yang lebih besar atau lebih kompleks daripada sekadar variabel sederhana. Menggunakan file eksternal, seperti file teks atau file CSV, adalah salah satu cara yang efisien untuk mengatasi situasi tersebut. Artikel ini akan menjelaskan beberapa contoh penggunaan file eksternal dalam PHP dan memberikan penjelasan lebih rinci tentang setiap contoh.
Membaca Data dari File Teks:
Dalam contoh pertama, kita akan membahas bagaimana cara membaca data dari file teks eksternal. Anggaplah kita memiliki file teks bernama “data.txt” yang berisi daftar nama pengguna, satu nama per baris.
Contoh isi data.txt:
John Doe
Jane Smith
Michael Johnson
Kode PHP untuk membaca data dari file tersebut adalah sebagai berikut:
$fileName = "data.txt";
$dataArray = file($fileName, FILE_IGNORE_NEW_LINES);
foreach ($dataArray as $name) {
echo $name . "<br>";
}
Penjelasan:
$fileName
berisi nama file yang akan dibaca, yaitu “data.txt”.file($fileName, FILE_IGNORE_NEW_LINES)
digunakan untuk membaca seluruh isi file teks dan mengembalikan array, dengan setiap baris menjadi elemen array.FILE_IGNORE_NEW_LINES
berguna untuk menghapus karakter newline (“\n”) dari setiap elemen array, sehingga tampilan nama tidak dipisahkan oleh baris baru.foreach
digunakan untuk mengiterasi melalui array$dataArray
dan mencetak setiap nama di antara tag<br>
untuk membuat tampilan baris baru di HTML.
Menulis Data ke File Teks
Selanjutnya, kita akan menjelaskan bagaimana cara menulis data ke file teks eksternal. Misalkan kita ingin menambahkan nama baru ke file “data.txt”.
$fileName = "data.txt";
$newName = "Emily Anderson";
$file = fopen($fileName, "a");
fwrite($file, $newName . "\n");
fclose($file);
Penjelasan:
$newName
berisi nama baru yang ingin ditambahkan ke file, yaitu “Emily Anderson”.fopen($fileName, "a")
membuka file dengan mode “a” (append), yang berarti file akan dibuka untuk menulis dengan posisi pointer berada di akhir file. Data baru akan ditambahkan di akhir file tanpa menghapus konten yang sudah ada.fwrite($file, $newName . "\n")
menulis nama baru ke file dengan menambahkan karakter newline (“\n”) di akhirnya untuk memisahkan nama baru dari data sebelumnya.fclose($file)
menutup file setelah penulisan selesai.
Membaca Data dari File CSV
Selanjutnya, kita akan melihat contoh penggunaan file eksternal dalam bentuk CSV. File CSV adalah format yang umum digunakan untuk menyimpan data terstruktur dalam bentuk tabel dengan baris dan kolom. Anggaplah kita memiliki file CSV bernama “data.csv” yang berisi kolom “Nama” dan “Usia”.
Contoh isi data.csv:
Nama,Usia
John,25
Jane,30
Michael,28
Kode PHP untuk membaca data dari file CSV dan menampilkannya dalam bentuk tabel adalah sebagai berikut:
$fileName = "data.csv";
$csvData = array_map("str_getcsv", file($fileName));
echo "<table>";
foreach ($csvData as $row) {
echo "<tr>";
foreach ($row as $cell) {
echo "<td>" . $cell . "</td>";
}
echo "</tr>";
}
echo "</table>";
Penjelasan:
$fileName
berisi nama file CSV yang akan dibaca, yaitu “data.csv”.file($fileName)
membaca seluruh isi file CSV dan mengembalikan array, di mana setiap baris menjadi elemen array.array_map("str_getcsv", ...)
digunakan untuk menguraikan setiap baris menjadi array menggunakan fungsistr_getcsv
, sehingga kolom-kolom pada setiap baris dapat diakses melalui indeks array.- Selanjutnya, kita menggunakan tag
<table>
untuk membuat tabel HTML danforeach
untuk mengiterasi melalui array$csvData
. - Setiap elemen array pada
$csvData
adalah baris dari file CSV, dan kita menggunakanforeach
lagi untuk mengiterasi melalui setiap elemen dalam baris tersebut. - Dalam setiap iterasi, kita mencetak setiap elemen array sebagai sel dalam tabel menggunakan tag
<td>
, sehingga data akan ditampilkan dalam bentuk tabel pada halaman web.
Menulis Data ke File CSV
Terakhir, mari kita lihat contoh bagaimana cara menulis data ke file CSV.
$fileName = "data.csv";
$newData = ["Alice", 22];
$file = fopen($fileName, "a");
fputcsv($file, $newData);
fclose($file);
Penjelasan:
$newData
berisi data baru yang ingin ditambahkan ke file CSV, yaitu “Alice” dan “22”.fopen($fileName, "a")
membuka file CSV dengan mode “a” (append) sehingga data baru akan ditambahkan di akhir file tanpa menghapus data yang sudah ada.fputcsv($file, $newData)
menulis data baru ke file CSV dengan mengonversi array$newData
menjadi baris dalam file CSV.fclose($file)
menutup file setelah penulisan selesai.
Kesimpulan
Penggunaan file eksternal dalam PHP adalah cara efisien untuk menyimpan dan mengelola data yang lebih besar dan kompleks dalam aplikasi web. Dengan menggunakan file eksternal, kita dapat membaca dan menulis data dengan mudah tanpa harus bergantung pada database atau sumber data utama lainnya. Membaca dan menulis data dari file teks dan CSV adalah keterampilan penting yang harus dimiliki oleh pengembang web untuk meningkatkan efisiensi dan fleksibilitas dalam pengolahan data.