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?:
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 '已安裝,請不要再次進(jìn)行安裝'; 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/', ]; //定義標(biāo)志位變量 $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 '不能進(jìn)行安裝'; } ?>
Grace à 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.