Sesetengah pelajar sangat ingin tahu tentang tempat pengesanan atribut fail digunakan. Mengesan atribut fail boleh digunakan di terlalu banyak tempat.
Mari kita berikan contoh:
1. Apabila kami memasang perisian, anda akan mendapati bahawa jika fail itu wujud, ia akan melompat ke tempat lain.
2. Jika sesetengah fail tidak mempunyai kebenaran menulis semasa proses pemasangan, pemasangan tidak akan dibenarkan.
Mari ambil tangkapan skrin proses pemasangan discuz, perisian yang sangat terkenal di China:
Contoh di atas ialah penggunaan pengesanan fail biasa.
Mari kita pelajari kumpulan fungsi berikut. Kemudian, mari belajar melalui contoh.
bool file_exists ($nyatakan nama fail atau laluan fail)
Fungsi: sama ada fail itu wujud.
bool is_readable ($nyatakan nama fail atau laluan fail)
Fungsi: sama ada fail boleh dibaca
bool is_writeable ($specify nama fail atau laluan fail)
Fungsi: sama ada fail boleh ditulis
bool is_executable ($menentukan nama fail atau laluan fail)
Fungsi: sama ada fail boleh laksana
bool is_file ($menentukan nama fail atau laluan fail)
Fungsi: sama ada ia adalah fail
bool is_dir ($ menentukan nama fail atau laluan fail)
Fungsi: Sama ada direktori
void clearstatcache (void)
Fungsi: Kosongkan cache status fail
Fungsi di atas boleh dilihat sepintas lalu. Faham. Bagi eksperimen, mari tulis contoh yang kami berikan pada mulanya.
Mari kita bincangkan tentang contoh pertama, kunci fail. Jika ia telah dipasang, jika kunci pemasangan wujud, ia akan menggesa bahawa ia telah dipasang, jika tidak, pemasangan akan diteruskan.
Kami menganggap bahawa URL antara muka pemasangan ialah: install.php, dan fail kunci yang dipasang ialah install.lock. Kami boleh mengesan sama ada fail install.lock wujud.
<?php if(file_exists('install.lock')){ echo '已安装,请不要再次进行安装'; exit; } ?>
Mari lakukan eksperimen pengesanan pemasangan fail untuk mengesan sama ada fail atau direktori mempunyai kebenaran menulis atau membaca. Jika tidak, pemasangan tidak boleh dilakukan.
Idea untuk mengendalikan perkara ini adalah seperti berikut:
1. Tentukan kumpulan tatasusunan yang perlu mengesan kebenaran
2. Boleh mengesan sama ada ia adalah folder atau fail
3. Buat pembolehubah set jika pembolehubah yang ditetapkan adalah palsu, langkah pemasangan seterusnya tidak akan dipaparkan
<?php //可以定义一批文件是否存在 $files = [ 'config.php', 'img/', 'uploads/', ]; //定义标志位变量 $flag = true; foreach($files as $v){ echo $v; //判断是文件还是文件夹 if(is_file($v)){ echo '是一个文件 '; }else if(is_dir($v)){ echo '是一个文件夹 '; } if(is_readable($v)){ echo ' 可读'; }else{ echo '<font color="red">不可读</font>'; } if(is_writeable($v)){ echo '可写'; }else{ echo '<font color="red">不可写</font>'; } echo '<br />'; } if($flag){ echo '<a href="step1">下一步</a>'; }else{ echo '不能进行安装'; } ?><🎜. >Lulus Dalam contoh di atas, kami melakukannya. Laksanakan pengesanan pemasangan semasa proses pemasangan perisian PHP tertentu. Itulah realisasi idea kami di atas.