ホームページ > バックエンド開発 > PHPチュートリアル > PHP は file_exists または is_file_PHP チュートリアルを使用してファイルが存在するかどうかを判断します

PHP は file_exists または is_file_PHP チュートリアルを使用してファイルが存在するかどうかを判断します

WBOY
リリース: 2016-07-20 11:03:18
オリジナル
1119 人が閲覧しました

プログラムを書くときに、ファイルが存在するかどうかを判断するときに、is_fileを使う人とfile_existsを使う人の2つの書き方があることが分かりました。 ​

ファイルが存在するかどうかを確認するには、is_file または file_exists? を使用します。

プログラムを書いていると、ファイルの有無を判定するときにis_fileを使う人とfile_existsを使う人の2通りの書き方があることに気づきました。

PHP の file_exists、is_file、is_dir の違いについてのこの記事を読んだ後、PHP の file_exists = is_dir + is_file であることを基本的に理解しました。

検証するプログラムを作成します:

それぞれ1000回実行し、所要時間を記録します。

ファイルが存在します(カレントディレクトリ)
is_file:0.4570ms
file_exists:2.0640ms

ファイルは存在します(絶対パスレベル3/www/hx/a/)
is_file:0.4909ms
file_exists:3.3500ms

ファイルは存在します(絶対パスレベル5/www/hx/a/b/c/)
is_file:0.4961ms
file_exists:4.2100ms

ファイルが存在しません(カレントディレクトリ)
is_file:2.0170ms
file_exists:1.9848ms

ファイルが存在しません(絶対パスレベル5/www/hx/a/b/c/)
is_file:4.1909ms
file_exists:4.1502ms

ディレクトリが存在します
file_exists:2.9271ms
is_dir:0.4601ms
ディレクトリが存在しません
file_exists:2.9719ms
is_dir:2.9359ms

is_file($file)
file_exists($file)
$file がディレクトリの場合、is_file は false を返し、file_exists は true を返します


ファイルが存在する場合、is_file は file_exists よりもはるかに高速です。 ファイルを検出するディレクトリが深いほど速度の差は大きくなりますが、少なくとも 4 倍は速くなります。

ファイルが存在しない場合、is_file は file_exists よりも少し遅くなりますが、無視しても問題ありません。

ディレクトリが存在する場合、is_dir は file_exists よりもはるかに高速です;

ディレクトリが存在しない場合、is_dir は file_exists よりも少し遅くなりますが、無視しても問題ありません。

結論:

ファイルが存在するかどうかを確認したい場合は、関数 is_file() を使用します。 ディレクトリが存在するかどうかを確認したい場合は、関数 is_dir(),
を使用します。 file_exists を使用する場所がないようです。渡されたパラメータがファイルなのかディレクトリなのかが不明な場合に使用されますか?


http://www.bkjia.com/PHPjc/445301.html

tru​​ehttp://www.bkjia.com/PHPjc/445301.html技術記事プログラムを書くときに、ファイルが存在するかどうかを判断するときに、is_fileを使う人とfile_existsを使う人の2つの書き方があることが分かりました。 ファイルが存在するかどうかを確認します...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート