Fungsi flock() PHP
Definisi dan penggunaan
Fungsi flock() mengunci atau melepaskan file.
Jika sukses, kembalikan true. Jika gagal, kembalikan false.
Syntaks
flock(Operasi flock(),kunci,block)
Parameter | Deskripsi |
---|---|
Operasi flock() | Diperlukan. Menentukan file yang terbuka yang akan dikunci atau dilepas. |
kunci | Diperlukan. Menentukan jenis penguncian yang akan digunakan. |
block | Opsional. Jika diatur menjadi 1 atau true, maka saat mengunci akan menghalangi proses lain. |
说明
Keterangan Operasi flock() berkas
kunci Harus menjadi penanda berkas yang sudah dibuka.
- Parameter dapat berupa salah satu nilai berikut: kunci diatur menjadi LOCK_SH (diatur menjadi 1 di versi PHP 4.0.1 sebelumnya).
- Untuk mendapatkan kunci eksklusif (program tulis), atur kunci diatur menjadi LOCK_EX (diatur menjadi 2 di versi PHP 4.0.1 sebelumnya).
- Untuk melepaskan kunci (baik bersamaan atau eksklusif), atur kunci diatur menjadi LOCK_UN (diatur menjadi 3 di versi PHP 4.0.1 sebelumnya).
- Jika tidak ingin flock() menahan saat mengkunci, berikan kunci Ditambahkan dengan LOCK_NB (diatur menjadi 4 di versi PHP 4.0.1 sebelumnya).
Petunjuk dan Keterangan
Petunjuk:Dapat melalui fclose() Untuk melepaskan operasi kunci, kode dijalankan saat operasi selesai secara otomatis pula.
Keterangan:Karena flock() memerlukan penanda berkas, mungkin harus digunakan berkas kunci khusus untuk melindungi akses berkas yang diinginkan untuk dibuka dalam mode tulis (tambahkan "w" atau "w+" ke dalam fungsi fopen()).
Contoh
<?php $file = fopen("test.txt","w+"); // Exclusive locking if (flock($file,LOCK_EX)) { fwrite($file,"Write something"); // release lock flock($file,LOCK_UN); } else { echo "Error locking file!"; } fclose($file); ?>