Cara menggunakan fopen php

Penanganan file PHP menjadi topik pembahasan pada tutorial kita kali ini. Penanganan file yang dimaksud disini adalah cara membuka, membaca, menulis, dan menghapus suatu file (pada tutorial kali ini saya akan memberikan contoh file txt)

Tutorial penanganan file PHP

Dalam tutorial penanganan file php ini kita akan membuat file txt dengan php sebagai contoh. Namun, fungsi penanganan file php tidak hanya tentang membuat file tetapi juga membuka, menambah dan menghapus juga termasuk dalam fungsi penanganan file php. Oleh karena itu, saya akan membagi tutorial ini menjadi beberapa bagian

Fungsi foopen

Fungsi fopen ini digunakan untuk membuka file

Sintaksis

fopen ( string $filename , string $mode [, bool $use_include_path = FALSE [, resource $context ]] ) : resource

contoh penggunaan fungsi dari fopen

$file = fopen("c:\\namafolder\\namafile.txt", "r");  
_

fungsi fclose

Fungsi ini berfungsi untuk menutup file yang telah dibuka menggunakan fopen

Sintaksis

fclose ( resource $handle ) : bool

Contoh penggunaan fungsi fclose()

fclose($file);  

fungsi ketakutan

Fungsi ini digunakan untuk melihat isi file

Sintaksis

fread ( resource $handle , int $length ) : string
_

Contoh penggunaan fungsi fread()

$namafile= "c:\\namafolder\namafile.txt";    
$file= fopen($namafile, "r");
$isifile= fread($file, filesize($namafile));
echo $isifile;
fclose($file);

fungsi fwrite

Fungsi fwrite() digunakan untuk menulis atau mengubah isi file

Sintaksis

fwrite ( resource $handle , string $string [, int $length ] ) : int
_

Contoh skrip fungsi fwrite()

$file = fopen('namafile.txt', 'w');
$text = "membuat file txt dengan php\n";
fwrite($file , $text);  
$text = "dengan php file handling programs\n";
fwrite($file , $text);  
fclose($file );  
echo "File berhasil di tulis";  

Batalkan fungsi tautan

Fungsi unlink() digunakan untuk menghapus file

Sintaksis

unlink ( string $filename [, resource $context ] ) : bool
_

Contoh penggunaan fungsi unlink()

$namafile = namafile.txt
unlink($namafile);  
_

Kesimpulan

Penanganan file PHP tidak hanya dapat membuat file tetapi juga dapat membuka, mengedit, dan menghapus file di php

Langkah pertama Anda saat mencoba membaca data dari file atau menulis sesuatu ke dalamnya adalah memeriksa apakah file tersebut sudah ada. Mencoba membaca data dari file yang tidak ada akan menghasilkan peringatan dari PHP dan mungkin merusak kode Anda

Cara termudah untuk memeriksa apakah suatu file ada adalah dengan menggunakan fungsi _

file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
4 PHP. Ini akan mengembalikan
file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
_5 jika file atau direktori dengan
file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
6 tertentu ada dan
file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
7 jika tidak. Ini mungkin sudah jelas, tetapi saya ingin menunjukkan bahwa
file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
6 tidak harus hanya berupa nama file. Ini juga bisa menjadi jalur absolut atau relatif. Sebagai contoh, kita dapat menggunakan bilangan prima. txt atau science/project/periodic_table. txt

Penting juga untuk diingat bahwa fungsi ini juga akan mengembalikan

file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
7 untuk file yang tidak dapat diakses karena pembatasan mode aman

Fungsi lain yang dapat Anda gunakan untuk memeriksa keberadaan file adalah


00. Tidak seperti

_01, fungsi ini hanya akan mengembalikan
file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
5 jika jalur yang ditentukan menunjuk ke file dan direktori yang bukan

Pastikan bahwa file tersebut benar-benar ada

Jika kode yang Anda tulis melakukan banyak operasi file pada file tertentu, Anda mungkin mendapatkan hasil yang salah menggunakan fungsi di atas. Ini karena penerapan


_01 dan

00 cache untuk meningkatkan kinerja. PHP juga meng-cache nilai yang dikembalikan oleh fungsi sistem file lain seperti

05,

06, dll.

Anda dapat menghubungi


_07 untuk memastikan bahwa setiap informasi yang Anda akses adalah yang terbaru

Ini umumnya hanya menjadi masalah jika file yang sama diakses beberapa kali dalam satu skrip untuk mengetahui statusnya. Selain itu, data yang di-cache akan dihapus jika Anda menghapus file dalam skrip yang menggunakan fungsi


08. Ini pada dasarnya berarti bahwa Anda mungkin tidak akan menghadapi masalah yang terkait dengan caching, tetapi masih baik untuk mengetahui bahwa Anda dapat menghapus cache jika informasi menjadi basi atau jika Anda mendapatkan hasil yang tidak diharapkan saat mencoba mengakses informasi tentang file

Membaca Data dari File di PHP

Salah satu cara termudah untuk membaca data dari file di PHP adalah dengan bantuan fungsi


09. Itu hanya akan membaca seluruh file dan memberikannya kepada Anda sebagai string. Semua parameter kecuali yang pertama adalah opsional

Parameter kedua menerima nilai boolean untuk menentukan apakah harus mencari file di lokasi yang ditentukan oleh include path, yang dapat diatur menggunakan fungsi


10

Anda dapat menggunakan parameter ketiga untuk menentukan sekumpulan opsi guna meningkatkan cara mengakses file. Anda dapat menggunakannya untuk menentukan nilai tajuk seperti


11 dan

12 serta metode HTTP


_13 parameter menentukan titik di mana pembacaan dimulai pada file asli. Memberi nilai negatif akan mulai menghitung dari akhir. Dukungan untuk offset negatif hanya ditambahkan di PHP 7. 1. 0. Perlu dicatat bahwa offset hanya berfungsi dengan file lokal dan tidak didukung untuk file jarak jauh

Fungsi


_14 membaca seluruh file sekaligus secara default. Anda dapat mengubah perilaku ini dengan memberikan nilai untuk parameter

15. Panjang karakter yang akan dibaca dihitung dari nilai offset

Fungsi ini akan mengembalikan

file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
7 jika gagal membaca data dari file yang Anda tentukan. Namun, itu juga dapat mengembalikan nilai yang mengevaluasi ke
file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
7, jadi pastikan Anda memeriksa apakah itu benar-benar mengembalikan salah menggunakan operator

18

Anda dapat menggunakan fungsi ini untuk membuka file jarak jauh, tetapi itu hanya mungkin jika nilai opsi


19 di php. ini adalah
file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
_5 atau

21

Salah satu cara termudah untuk menulis data ke file di PHP adalah dengan bantuan fungsi


22

file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
_6 parameter menentukan file tempat data akan ditulis. Parameter kedua adalah data yang ingin Anda tulis ke file. Sebagian besar waktu itu akan berupa string, tetapi juga bisa berupa larik atau sumber daya aliran

Ingat bahwa PHP akan secara otomatis membuat file dengan nama yang diberikan untuk Anda jika belum ada. Namun, itu tidak akan membuat direktori apa pun untuk Anda. Artinya, Anda dapat menyimpan file dengan nama Origin of Species [Charles Darwin]. txt tanpa kesalahan. Namun, susunan

file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
6 untuk biologi/evolusi/Asal Usul Spesies [Charles Darwin]. txt, jika biologi evolusioner/tidak ada, akan menghasilkan kesalahan


_25 parameter menentukan bagaimana konten akan ditulis ke file. Itu dapat memiliki satu atau semua dari tiga nilai berikut

  • 
    
    _26—ini memberitahu PHP untuk mencari nama file tertentu di direktori include
  • 
    
    _27—ini akan memberi tahu PHP untuk menambahkan data yang Anda berikan ke fungsi untuk data dalam file. Ini dapat berguna jika Anda menyimpan data dalam file seperti log atau buku harian pribadi. Merekam data baru seperti suhu atau peristiwa yang terjadi pada Anda hari ini tidak akan menimpa sesuatu yang Anda rekam kemarin
  • 
    
    _28—ini akan memberi tahu PHP untuk mengunci file sebelum mulai menulis konten ke dalamnya. Hal ini dapat mencegah terjadinya hal yang tidak diharapkan saat dua skrip berbeda membaca atau menulis data ke file yang sama. Dengan nilai khusus ini, Anda akan mendapatkan kunci eksklusif pada file tersebut. Anda dapat membaca lebih lanjut tentang kunci ini di dokumentasi PHP function
    
    
    29

Fungsi ini mengembalikan jumlah byte yang ditulis ke file saat berhasil dan

file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
7 saat gagal. Namun, Anda masih harus menggunakan operator yang sama ketat untuk memeriksa apakah berhasil menulis konten ke file. Itu karena kode yang menulis 0 byte ke file masih akan bernilai salah

Membaca dan menulis data ke file

Anda dapat menuju ke situs Project Gutenberg dan mencoba mengunduh file menggunakan fungsi


14. Setelah Anda memiliki data dalam string, Anda hanya dapat menyimpannya dalam file lokal menggunakan fungsi

32. Contoh berikut akan memperjelas hal ini

1

2
3
$filename = 'http://www.gutenberg.org/cache/epub/1228/pg1228.txt';
4
5
$book_content = file_get_contents($filename);
6
file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);

0

1

2

Anda dapat menyimpan halaman web atau konten dari situs seperti Wikipedia Indonesia dengan cara yang sama. Jika Anda perlu memahami HTML atau mem-parsing konten HTML yang hanya Anda simpan secara lokal, Anda dapat mengikuti tutorial seperti Parsing HTML dengan PHP menggunakan DiDOM, yang akan membantu Anda secara otomatis mendapatkan tautan, file gambar, atau informasi serupa lainnya dari halaman web

Mari kita kembali ke file lokal sekarang. Pertimbangkan situasi di mana Anda memiliki banyak file teks dan Anda ingin menganalisis kontennya dengan melihat hal-hal seperti kata yang paling umum di dalamnya. Ini dapat dengan mudah dicapai dengan menggunakan sekumpulan fungsi PHP bawaan

1

2
3

7
4
$book_content = file_get_contents($filename);
5
6
2
2

0

1
2
5
2
6
2
7
2
8
2
9
3
0
3
1
3
2
3
3
3
4
3
5
3
6
3
7
3
8
3
9
$filename = 'http://www.gutenberg.org/cache/epub/1228/pg1228.txt';
0
$filename = 'http://www.gutenberg.org/cache/epub/1228/pg1228.txt';
1
$filename = 'http://www.gutenberg.org/cache/epub/1228/pg1228.txt';
2
$filename = 'http://www.gutenberg.org/cache/epub/1228/pg1228.txt';
3
$filename = 'http://www.gutenberg.org/cache/epub/1228/pg1228.txt';
4
$filename = 'http://www.gutenberg.org/cache/epub/1228/pg1228.txt';
5
$filename = 'http://www.gutenberg.org/cache/epub/1228/pg1228.txt';
6
$filename = 'http://www.gutenberg.org/cache/epub/1228/pg1228.txt';
7
$filename = 'http://www.gutenberg.org/cache/epub/1228/pg1228.txt';
8
$filename = 'http://www.gutenberg.org/cache/epub/1228/pg1228.txt';
9
4
0
4
1
4
2
4
3
4
4
4
5
4
6
4
7
4
8
4
9
5
0
5
1
5
2
5
3
5
4
5
5
5
6
5
7
5
8

Kami membuat semua teks menjadi huruf kecil dan membuat asumsi bahwa setiap kata pecah pada spasi. Teks kemudian diubah menjadi array menggunakan


33 untuk memudahkan menganalisis kata-kata. Anehnya, kata "evolusi" tidak digunakan sekali dalam seluruh buku yang memberikan teori evolusi asal-usulnya.

Ini hanyalah salah satu contoh menganalisis teks dalam jumlah besar secara otomatis. Anda dapat melakukan hal serupa dengan jenis teks yang disimpan dalam file

Pencatatan data dengan FILE_APPEND

Salah satu contoh informasi pengumpulan data yang lebih berguna untuk jangka waktu kecil. Ini bisa berupa pelatihan rutin, data cuaca, atau mengamati koloni lebah. Setelah Anda memiliki data dalam string, Anda dapat dengan mudah menyimpannya dalam file dan menambah data yang ada menggunakan flag


27 dengan

32

1

2
3
$book_content = file_get_contents($filename);
5
4
5
$book_content = file_get_contents($filename);
8
6
6
0

0

1
6
3
2
6
6
5
2
8
6
7
2
9
3
1
file_put_contents('Biology/Evolution/On the Origin of Species [Charles Darwin].txt', $book_content, LOCK_EX);
0________512_______35

Kode yang sama dapat digunakan untuk hal-hal seperti menyimpan Artikel Fitur Wikipedia hari ini dalam file setiap hari atau melacak Berita dan berita utama selama berminggu-minggu atau berbulan-bulan. Yang perlu Anda lakukan hanyalah menulis kode untuk mengikis data dan kemudian menyimpannya menggunakan sesuatu yang mirip dengan cuplikan kode di atas. Tutorial seperti Parsing HTML dengan PHP menggunakan DiDOM dapat membantu Anda dalam parsing bagian

Alih-alih menulis teks dalam format biasa, Anda dapat membungkusnya dalam beberapa HTML agar lebih mudah dibaca di browser. Kemungkinannya tidak terbatas

Akhir pemikiran

Ada banyak cara lain untuk membaca dan menulis data ke file di PHP. Namun,


_14 dan

32 akan memenuhi hampir semua kebutuhan dasar Anda tanpa menambahkan kerumitan yang tidak perlu

Satu-satunya saat Anda mengalami masalah dengan


14 adalah saat Anda membaca file yang sangat besar—seperti berukuran 2 GB atau lebih. Ini karena

_14 memuat seluruh file ke dalam memori sekaligus, dan ada kemungkinan kehabisan memori dengan file sebesar itu. Dalam hal ini, Anda harus mengandalkan fungsi seperti

40 dan

41 untuk membaca sebagian kecil file sekaligus

Apa itu Fungsi fopen?

Fungsi fopen membuka file yang ditentukan oleh nama file.

Apa fungsi fwrite?

Fungsi fwrite menulis hingga hitungan item, setiap panjang ukuran, dari buffer ke aliran output. Penunjuk file yang terkait dengan aliran (jika ada) ditambah dengan jumlah byte yang ditulis fwrite .