Mari berikan anda perisian yang sangat terkenal di negara ini Tangkapan skrin proses pemasangan Discuz menunjukkan kepada semua orang:
Contoh di atas adalah 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 ($menentukan nama fail atau laluan fail)
Fungsi: sama ada fail boleh dibaca
bool is_writeable ($menentukan nama fail atau laluan fail)
Fungsi : sama ada fail boleh dibaca 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 fail
bool is_dir ($nyatakan nama fail atau laluan fail)
Fungsi: sama ada ia adalah direktori
void clearstatcache ( void)
Fungsi: kosongkan cache status fail
Fungsi di atas jelas sekali imbas. 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 menangani perkara ini adalah seperti berikut:
1 Tentukan kumpulan tatasusunan yang perlu mengesan kebenaran
2 ia adalah folder atau fail
3. Buat pembolehubah bit set 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 '不能进行安装'; } ?>
Melalui contoh di atas, kami telah melakukannya. Laksanakan pengesanan pemasangan semasa proses pemasangan perisian PHP tertentu.
Itulah realisasi idea kami di atas.