Fonction de détection d'attribut de fichier

Donnons-nous un logiciel très célèbre dans le pays. La capture d'écran du processus d'installation de Discuz montre à tout le monde :
QQ截图20161009105100.png

L'exemple ci-dessus est l'utilisation typique de la détection de fichiers.

Apprenons le lot de fonctions suivant. Ensuite, apprenons à travers un exemple.

bool file_exists ($spécifiez le nom du fichier ou le chemin du fichier)
Fonction : si le fichier existe.

bool is_readable ($spécifie le nom du fichier ou le chemin du fichier)
Fonction : indique si le fichier est lisible

bool is_writeable ($spécifie le nom du fichier ou le chemin du fichier)
Fonction : si le fichier est lisible en écriture

bool is_executable ($spécifie le nom du fichier ou le chemin du fichier)
Fonction : si le fichier est exécutable

bool is_file ($spécifie le nom du fichier ou chemin du fichier)
Fonction : s'il s'agit d'un fichier

bool is_dir ($précisez le nom du fichier ou le chemin du fichier)
Fonction : s'il s'agit d'un répertoire

void clearstatcache ( void)
Fonction : vider le cache d'état du fichier

Les fonctions ci-dessus sont claires en un coup d'œil. Quant à l’expérience, écrivons l’exemple que nous avons donné au début.

Parlons du premier exemple, le verrouillage de fichiers. S'il a été installé, si le verrou d'installation existe, il vous indiquera qu'il a été installé, sinon l'installation se poursuivra.

Nous supposons que l'URL de l'interface d'installation est : install.php et que le fichier de verrouillage installé est install.lock. Nous pouvons détecter si le fichier install.lock existe.

<?php
 if(file_exists('install.lock')){
     echo '已安装,请不要再次进行安装';
    exit;
 
}
?>

Faisons une expérience de détection d'installation de fichier pour détecter si le fichier ou le répertoire dispose d'autorisations d'écriture ou de lecture. Dans le cas contraire, l'installation ne pourra pas être effectuée.

L'idée de​​traiter ce problème est la suivante :

1. Définir un lot de tableaux qui doivent détecter les autorisations

2. il s'agit d'un dossier ou d'un fichier

3. Créez une variable de bit définie si la variable de bit définie est fausse, la prochaine étape de l'installation ne sera pas affichée

<?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 '不能进行安装';
}
?>

Grâce à l'exemple ci-dessus, nous l'avons fait. Implémentez la détection d'installation pendant le processus d'installation d'un certain logiciel PHP.

C'est la réalisation de notre idée ci-dessus.


Formation continue
||
<?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 '不能进行安装'; } ?>
soumettreRéinitialiser le code
  • Recommandations de cours
  • Téléchargement du didacticiel