Introduction : lors de l'écriture d'un programme, j'ai découvert qu'il existe deux façons d'écrire pour juger si un fichier existe. Certaines personnes utilisent is_file, et certaines personnes utilisent file_exists. Lequel est le meilleur ou le plus adapté ? Pour déterminer l'existence d'un fichier, utilisez is_file ou file_exists ? Lors de l'écriture d'un programme, j'ai découvert qu'il existe deux types de
pour déterminer si un fichier existe. Cependant, les performances de ces deux fonctions sont différentes. plus rapide que le point file_exists().
Si le fichier que vous souhaitez vérifier existe, alors is_file() est plusieurs fois plus rapide que file_exists(), mais si le fichier n'existe pas, les deux sont à peu près identiques.
Voici les résultats du test. Le premier test est que le fichier existe, et le deuxième test est que le fichier n'existe pas :
Le premier test, le fichier existe
<?php // 运行 file_exists 10000 次 $time = microtime(); $time = explode(' ', $time); $begintime = $time[1] + $time[0]; for($i=0;$i<10000;$i++) file_exists('/Users/Jacky'); // 文件存在 $time = microtime(); $time = explode(" ", $time); $endtime = $time[1] + $time[0]; $totaltime = ($endtime - $begintime); echo '运行file_exists 10000 次所花时间: ' .$totaltime. ' 秒'.PHP_EOL; // 运行 is_file 10000 次 $time = microtime(); $time = explode(" ", $time); $begintime = $time[1] + $time[0]; for($i=0;$i<10000;$i++) is_file('/Users/Jacky'); $time = microtime(); $time = explode(" ", $time); $endtime = $time[1] + $time[0]; $totaltime = ($endtime - $begintime); echo '运行 is_file 10000 次所花时间: ' .$totaltime. ' 秒.'.PHP_EOL;
Deuxième test, le fichier n'existe pas
<?php // 运行 file_exists 10000 次 $time = microtime(); $time = explode(' ', $time); $begintime = $time[1] + $time[0]; for($i=0;$i<10000;$i++) file_exists('/Users/Jackys'); // 文件不存在 $time = microtime(); $time = explode(" ", $time); $endtime = $time[1] + $time[0]; $totaltime = ($endtime - $begintime); echo '运行file_exists 10000 次所花时间: ' .$totaltime. ' 秒'.PHP_EOL; // 运行 is_file 10000 次 $time = microtime(); $time = explode(" ", $time); $begintime = $time[1] + $time[0]; for($i=0;$i<10000;$i++) is_file('/Users/Jackys'); $time = microtime(); $time = explode(" ", $time); $endtime = $time[1] + $time[0]; $totaltime = ($endtime - $begintime); echo '运行 is_file 10000 次所花时间: ' .$totaltime. ' 秒.'.PHP_EOL;
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!