Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Operasi fail PHP: semak sama ada fail boleh dibaca/ditulis/dilaksanakan

Operasi fail PHP: semak sama ada fail boleh dibaca/ditulis/dilaksanakan

青灯夜游
青灯夜游asal
2021-08-03 18:00:094588semak imbas

Dalam artikel sebelumnya "operasi fail php: membaca fail baris demi baris", kami memperkenalkan dua kaedah membaca fail baris demi baris dalam fungsi PHP (fgets() dan fgetss()) . Artikel berikut akan memperkenalkan kepada anda cara menggunakan PHP untuk menyemak sama ada fail boleh dibaca, boleh ditulis dan boleh dilaksanakan.

Apabila menjalankan operasi seperti membaca dan menulis fail, anda perlu menyemak dahulu sama ada fail itu boleh dibaca, ditulis atau dilaksanakan, iaitu sama ada fail itu mempunyai kebenaran boleh dibaca, boleh ditulis dan boleh laku. Jadi bagaimana untuk menyemak? Hari ini kami akan memperkenalkan kepada anda kaedah pemeriksaan.

Kami mempunyai fail teks bernama "test.txt", gunakan fungsi chmod() untuk menetapkan kebenaran:

<?php
chmod("test.txt", 0400);
?>

Kod di atas boleh menetapkan kebenaran fail test.txt kepada: Ia boleh dibaca oleh pemiliknya, tetapi tidak oleh orang lain.

Mari kita lihat cara menyemak sama ada fail boleh dibaca, boleh ditulis dan boleh dilaksanakan.

1. Gunakan fungsi is_readable() untuk menyemak sama ada fail boleh dibaca

Fungsi is_readable() boleh menyemak sama ada fail yang ditentukan boleh dibaca sahaja; menerima satu parameter$filename, digunakan untuk menentukan fail yang akan disemak.

Mari kita lihat contoh kod:

 <?php
 header("Content-type:text/html;charset=utf-8");
 $file = "test.txt";
 if(is_readable($file))
 {
 echo ("$file 可读");
 }
 else
 {
 echo ("$file 不可读");
 }
 ?>

Jika fail $filename wujud dan data boleh dibaca, ia akan mengembalikan BENAR, jika tidak ia mengembalikan FALSE. Oleh itu, hasil output ialah:

test.txt 可读

2 Gunakan fungsi is_writable() untuk menyemak sama ada fail boleh ditulis

Fungsi is_writable() boleh semak sama ada fail yang ditentukan boleh ditulis .

Fungsi ini juga menerima parameter $filename untuk menentukan fail yang akan disemak jika fail $filename wujud dan data boleh dibaca, ia mengembalikan BENAR, jika tidak, ia akan mengembalikan FALSE.

Mari kita lihat contoh kod di bawah:

 <?php
 header("Content-type:text/html;charset=utf-8");
 $file = "test.txt";
 if(is_writable($file))
 {
 echo ("$file 可写");
 }
 else
 {
 echo ("$file 不可写");
 }
 ?>

Hasil keluaran:

test.txt 不可读

3 Gunakan fungsi is_executable() untuk menyemak sama ada fail itu dilaksanakan

Fungsi is_executable() boleh menyemak sama ada fail yang ditentukan boleh laku; $filename

 <?php
 header("Content-type:text/html;charset=utf-8");
 $file = "test.txt";
 if(is_executable($file))
 {
 echo ("$file 可执行");
 }
 else
 {
 echo ("$file 不可执行");
 }
 ?>
Mengembalikan TRUE jika fail $filename wujud dan data boleh dibaca, jika tidak, mengembalikan FALSE. Oleh itu, hasil output ialah:

test.txt 不可执行

Penjelasan:

Keputusan fungsi is_readable(), is_writable() dan is_executable() akan menjadi dicache Gunakan fungsi clearstatcache() untuk mengosongkan cache.

Tambahkan kod berikut pada penghujung program untuk mengosongkan cache:

clearstatcache();
Itu sahaja jika anda ingin mengetahui perkara lain, anda boleh mengklik ini. → →

Pengendalian asas fail PHP

Disyorkan: Koleksi soalan temuduga PHP (koleksi)》《tutorial video php

Atas ialah kandungan terperinci Operasi fail PHP: semak sama ada fail boleh dibaca/ditulis/dilaksanakan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn