Cara menggunakan php file_put_contents array

Contoh
Menulis data ke file:

<?php
echo file_put_contents("test.txt","Hello World. Testing!");
?>
  //Output : 21

Section Artikel

Definisi dan Penggunaan

Fungsi File_put_contents() dapat digunakan untuk menulis data ke file.

Fungsi ini mengikuti aturan berikut saat mengakses file:

  1. Jika FILE_USE_INCLUDE_PATH disetel, periksa jalur penyertaan untuk salinan nama file
  2. Buat file jika tidak ada
  3. Buka file
  4. Kunci file jika LOCK_EX disetel
  5. Jika FILE_APPEND disetel, pindah ke akhir file. Jika tidak, hapus konten file
  6. Tuliskan data ke dalam file
  7. Tutup file dan buka kunci apa pun

Catatan: Gunakan FILE_APPEND untuk menghindari penghapusan konten file yang sudah ada.

Syntax

file_put_contents(filenamedatamodecontext)

Nilai Parameter

ParameterDeskripsifilenameRequired. Menentukan jalur ke file untuk menulis. Jika file tidak ada, fungsi ini akan membuatnyadataRequired. Data yang akan ditulis ke file. Bisa berupa string, array, atau aliran datamodeOptional. Menentukan cara membuka / menulis ke file. Nilai yang memungkinkan:
FILE_USE_INCLUDE_PATH – cari nama file di direktori penyertaan
FILE_APPEND – jika file sudah ada, tambahkan datanya – alih-alih menimpanya
LOCK_EX – Pasang kunci eksklusif pada file saat menulis padanyacontextOptional. Menentukan konteks pegangan file. Konteks adalah sekumpulan opsi yang dapat mengubah perilaku aliran.

Detail Teknis

Return Value:Jumlah byte yang ditulis ke dalam file saat berhasil, FALSE jika saat gagalPHP Version:5.0+Binary Safe:YaPHP Changelog:PHP 5.1 – Menambahkan dukungan untuk LOCK_EX dan kemampuan untuk meneruskan sumber daya streaming ke parameter data

filesystemphp

Di dalam tutorial ini kita akan membahas tentang cara manipulasi file di dalam PHP menggunakan fungsi-fungsi bawaan. Mulai dari berbagai cara untuk membaca file, menulis, menimpa file yang sudah ada dan juga menghapusnya.

Pembahasan ini akan kita bagi menjadi dua bagian: bagian pertama akan membahas cara membaca dan membuka file di dalam PHP. Sedangkan fungsi-fungsi sisanya akan kita bahas pada pertemuan ke-2.

Memeriksa Ketersediaan File

Sebelum kita memulai membaca file, kita akan mengenal fungsi

Mangga
Jeruk
Apel
Durian
Anggur
5 terlebih dahulu. Fungsi tersebut berfungsi untuk memeriksa apakah suatu file benar-benar exist atau tidak.

Jika file yang kita maksudkan ternyata memang ada, maka ia akan mengembalikan nilai

Mangga
Jeruk
Apel
Durian
Anggur
6, dan sebaliknya jika file yang kita maksud ternyata tidak ada, dia akan mengembalikan nilai
Mangga
Jeruk
Apel
Durian
Anggur
7.

Perhatikan contoh berikut:

<?php

if (file_exists('buah.txt')) {
  // file ada
} else {
  echo "File buah.txt tidak ditemukan <br>";
}

Jika file bernama

Mangga
Jeruk
Apel
Durian
Anggur
8 tidak ada, maka blok kode
Mangga
Jeruk
Apel
Durian
Anggur
9 yang akan dieksekusi oleh interpreter PHP.

Membaca File Dengan <?php echo readfile('buah.txt'); 0

Katakanlah kita memiliki sebuah file bernama

Mangga
Jeruk
Apel
Durian
Anggur
8. File tersebut berisi nama-nama buah di tiap barisnya:

Mangga
Jeruk
Apel
Durian
Anggur

Lalu kita akan membacanya dengan PHP. Cara pertama yang bisa kita lakukan adalah menggunakan fungsi

<?php

echo readfile('buah.txt');
0. Perhatikan contoh berikut:

<?php

echo readfile('buah.txt');

Fungsi

<?php

echo readfile('buah.txt');
0 akan membaca semua baris dari file
Mangga
Jeruk
Apel
Durian
Anggur
8 lalu diikuti ukuran file dalam satuan byte. Oleh karena itu kode program di atas akan menghasilkan output sebagai berikut:

Mangga Jeruk Apel Durian Anggur31

Fungsi

<?php

echo readfile('buah.txt');
0 bukan lah fungsi yang disarankan untuk membaca file karena keterbatasan fitur-fiturnya.

Membaca File Dengan <?php echo readfile('buah.txt'); 6

Cara yang kedua adalah dengan menggunakan fungsi

<?php

echo readfile('buah.txt');
6. Fungsi tersebut bisa untuk membaca berbagai file, baik secara lokal mau pun global (maksudnya url suatu situs tertentu), dan juga bisa membaca berbagai format file baik itu gambar, teks, json, xml, dan lain-lain.

Kita akan coba membaca isi dari file

Mangga
Jeruk
Apel
Durian
Anggur
8. Perhatikan contoh program berikut:

<?php

echo file_get_contents('buah.txt');

Output:

Mangga Jeruk Apel Durian Anggur

Jika anda mengubah karakter

<?php

echo readfile('buah.txt');
9 menjadi tag
Mangga Jeruk Apel Durian Anggur31
0 menggunakan fungsi
Mangga Jeruk Apel Durian Anggur31
1 sebagaimana berikut:

<?php

echo nl2br(file_get_contents('buah.txt'));

Maka anda akan mendapatkan output yang sama persis dengan isi dari file

Mangga
Jeruk
Apel
Durian
Anggur
8:

Mangga
Jeruk
Apel
Durian
Anggur

Membaca File Dengan Mangga Jeruk Apel Durian Anggur31 3

Di antara fungsi bawaan PHP yang bisa kita gunakan untuk membaca keseluruhan isi file adalah fungsi bernama

Mangga Jeruk Apel Durian Anggur31
3. Ia melakukan tugas yang sama dengan fungsi
<?php

echo readfile('buah.txt');
6.

Hanya saja, fungsi

Mangga Jeruk Apel Durian Anggur31
3 mengembalikan konten dari suatu file dalam bentuk array untuk tiap barisnya. Berbeda dengan fungsi
<?php

echo readfile('buah.txt');
6 yang mengembalikan seluruh konten dari suatu file dalam bentuk string utuh.

Perhatikan contoh berikut:

<?php

$isiFileBuah = file('buah.txt');

echo '<pre>';
print_r($isiFileBuah);
echo '</pre>';

Output:

Array
(
    [0] => Mangga
    [1] => Jeruk
    [2] => Apel
    [3] => Durian
    [4] => Anggur
)

Kita juga bisa menampilkannya dengan

Mangga Jeruk Apel Durian Anggur31
8 sebagaimana telah kita pelajari pada tutorial perulangan dan juga tutorial tentang manipulasi array.

Membaca File Dengan Mangga Jeruk Apel Durian Anggur31 9, <?php echo file_get_contents('buah.txt'); 0 dan <?php echo file_get_contents('buah.txt'); 1

Cara selanjutnya adalah dengan menggunakan

Mangga Jeruk Apel Durian Anggur31
9,
<?php

echo file_get_contents('buah.txt');
0 dan
<?php

echo file_get_contents('buah.txt');
1.

Cara ini lebih ribet dari sebelumnya, lebih banyak stepnya, tapi lebih direkomendasikan untuk kasus-kasus tertentu karena banyak fungsi yang bisa kita lakukan.

Skenario umumnya adalah 3 langkah:

  1. Kita buka file yang kita inginkan dengan fungsi
    Mangga Jeruk Apel Durian Anggur31
    
    9
  2. Setelah file kita buka, kita bisa membaca isi file tersebut dengan fungsi
    <?php
    
    echo file_get_contents('buah.txt');
    
    0.
  3. Ketika proses selesai, kita bisa menutup file tersebut dan menghapusnya dari memori menggunakan fungsi
    <?php
    
    echo file_get_contents('buah.txt');
    
    1.

Perhatikan contoh berikut, kita masih akan bermain-main dengan file

Mangga
Jeruk
Apel
Durian
Anggur
8:

Mangga
Jeruk
Apel
Durian
Anggur
0

Output:

Mangga Jeruk Apel Durian Anggur

Penjelasan

Dari kode program di atas, kita akan menjelaskan beberapa hal sebagai berikut:

  • fungsi
    Mangga Jeruk Apel Durian Anggur31
    
    9 menerima dua parameter:
    • parameter pertama adalah nama file
    • sedangkan parameter kedua adalah mode pembukaan file tersebut. Di dalam kode program di atas, kita menggunakan mode
      Mangga Jeruk Apel Durian Anggur
      
      0 yang artinya read.
    • Apa saja mode yang tersedia? Kita akan simak beberapa saat lagi.
  • fungsi
    Mangga Jeruk Apel Durian Anggur31
    
    9 akan bernilai
    Mangga
    Jeruk
    Apel
    Durian
    Anggur
    
    7 jika file yang kita maksud ternyata tidak ada.
  • fungsi
    <?php
    
    echo file_get_contents('buah.txt');
    
    0 menerima 2 parameter:
    • parameter pertama yaitu hasil kembalian dari fungsi
      Mangga Jeruk Apel Durian Anggur31
      
      9
    • dan parameter kedua berisi berapa byte yang akan dibaca dari file tersebut
    • paramter kedua kita isi dengan fungsi
      Mangga Jeruk Apel Durian Anggur
      
      5 agar isi file tersebut terbaca semuanya.
  • setelah proses yang berkaitan dengan variabel
    Mangga Jeruk Apel Durian Anggur
    
    6 selesai, kita tutup dengan fungsi
    <?php
    
    echo file_get_contents('buah.txt');
    
    1 yang menerima parameter hasil kembalian dari fungsi
    Mangga Jeruk Apel Durian Anggur31
    
    9.

Mode yang tersedia untuk fungsi Mangga Jeruk Apel Durian Anggur31 9

ModeDeskripsi
Mangga Jeruk Apel Durian Anggur
0Membuka file dalam mode read only.
<?php

echo nl2br(file_get_contents('buah.txt'));
1Membuka file dalam mode write only. Ia akan menghapus keseluruhan isi file dan menimpanya dengan yang baru, atau jika file tersebut belum pernah ada, ia akan membuatnya terlebih dahulu.
<?php

echo nl2br(file_get_contents('buah.txt'));
2Membuka file dalam mode write only. Isi dari file yang sebelumnya tetap dipertahankan.
<?php

echo nl2br(file_get_contents('buah.txt'));
3Membuat file baru dalam mode write only. Mengembalikan nilai
Mangga
Jeruk
Apel
Durian
Anggur
7 jika file telah ada sebelumnya.
<?php

echo nl2br(file_get_contents('buah.txt'));
5Membuka file dalam mode read dan write.
<?php

echo nl2br(file_get_contents('buah.txt'));
6Membuka file dalam mode read dan write. Menghapus konten file sebelumnya atau membuat file baru jika belum ada.
<?php

echo nl2br(file_get_contents('buah.txt'));
7Membuka file dalam mode read dan write. Sama seperti
<?php

echo nl2br(file_get_contents('buah.txt'));
6 akan tetapi konten file yang sebelumnya tidak dihapus.
<?php

echo nl2br(file_get_contents('buah.txt'));
9Membuka file dalam mode read dan write. Mengembalikan nilai
Mangga
Jeruk
Apel
Durian
Anggur
7 jika file telah ada sebelumnya.

Membaca File Perbaris dengan Mangga Jeruk Apel Durian Anggur 1

Selain menggunakan fungsi

<?php

echo file_get_contents('buah.txt');
0 untuk membaca konten dari suatu file. Kita juga bisa menggunakan fungsi
Mangga
Jeruk
Apel
Durian
Anggur
1.

Bedanya?

Jika menggunakan

<?php

echo file_get_contents('buah.txt');
0 berarti kita akan membaca konten dari suatu file sesuai dengan ukuran byte yang kita definisikan. Sedangkan jika menggunakan fungsi
Mangga
Jeruk
Apel
Durian
Anggur
1, maka kita membaca konten perbaris.

Perhatikan contoh berikut:

Mangga
Jeruk
Apel
Durian
Anggur
2

Kode program di atas akan menghasilkan output sebagai berikut:

Mangga
Jeruk
Apel
Durian
Anggur

Mengetahui Akhir Baris Suatu File

Dari kode program sebelum ini, kita tahu bahwa pointer dari proses pembacaan file akan berpindah dengan memanggil fungsi

Mangga
Jeruk
Apel
Durian
Anggur
1. Sehingga kita bisa menampilkan semua baris dari suatu file dengan memanggil
Mangga
Jeruk
Apel
Durian
Anggur
1 sebanyak jumlah baris tersebut.

Akan tetapi, bagaimana caranya kita tahu bahwa pointer pembacaan file telah berada pada baris paling bawah?

Jawabannya adalah menggunakan fungsi

Mangga
Jeruk
Apel
Durian
Anggur
8. Kata eof sendiri adalah singkatan dari end-of-file. Fungsi tersebut akan mengembalikan nilai
Mangga
Jeruk
Apel
Durian
Anggur
6 jika pointer berada pada baris paling akhir, dan jika tidak maka ia akan mengembalikan nilai
Mangga
Jeruk
Apel
Durian
Anggur
7.

Perhatikan kode program berikut:

Mangga
Jeruk
Apel
Durian
Anggur
4

Kesimpulan

Bahasa pemrograman PHP adalah bahasa yang berjalan di server. Sehingga proses manipulasi file adalah suatu hal yang hampir menjadi keniscayaan.

Untuk membaca file, kita bisa menggunakan beberapa cara. Mulai dari fungsi

<?php

echo readfile('buah.txt');
0, fungsi
<?php

echo readfile('buah.txt');
6, fungsi
Mangga Jeruk Apel Durian Anggur31
3, fungsi
<?php

echo file_get_contents('buah.txt');
0 dan juga
Mangga
Jeruk
Apel
Durian
Anggur
1.

Pembahasan Selanjutnya

Pada pembahasan selanjutnya, insyaallah kita masih dalam pembahasan manipulasi file bagian kedua. Yaitu tentang membuat file baru, mengedit, dan juga menghapus.