Mengesan fungsi atribut fail

Mari berikan anda perisian yang sangat terkenal di negara ini Tangkapan skrin proses pemasangan Discuz menunjukkan kepada semua orang:
QQ截图20161009105100.png

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 '是一个文件&nbsp;&nbsp;&nbsp;&nbsp;';
    }else if(is_dir($v)){
        echo '是一个文件夹&nbsp;&nbsp;&nbsp;&nbsp;';
    }
 
    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.


Meneruskan pembelajaran
||
<?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 '不能进行安装'; } ?>
  • Cadangan kursus
  • Muat turun perisian kursus