ホームページ >バックエンド開発 >PHPチュートリアル >PHP でファイル拡張子を効率的に検証するにはどうすればよいですか?

PHP でファイル拡張子を効率的に検証するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-28 03:45:14208ブラウズ

How Can I Efficiently Validate File Extensions in PHP?

正確なファイル拡張子チェックの確保

PHP でファイルのアップロードを処理する場合、ファイル拡張子の検証は非常に重要です。一般的な方法の 1 つは、クエリで示されているように、pathinfo 関数を使用することです:

$filename = $_FILES['video_file']['name'];
$ext = pathinfo($filename, PATHINFO_EXTENSION);
if ($ext !== 'gif' || $ext !== 'png' || $ext !== 'jpg') {
    echo 'error';
}

ただし、より広範囲の拡張機能をサポートする場合、このアプローチは最適ではない可能性があります。 20 個の異なる拡張機能を許可する場合を考えてみましょう:

if ($ext !== 'gif' || $ext !== 'png' || $ext !== 'jpg' || ...) {
    // ...
}

このようなコードは冗長で、非効率になる可能性があります。別の方法では、許可された拡張子の配列を利用します。

$allowed = array('gif', 'png', 'jpg');
$filename = $_FILES['video_file']['name'];
$ext = pathinfo($filename, PATHINFO_EXTENSION);
if (!in_array($ext, $allowed)) {
    echo 'error';
}

このアプローチはコードを簡素化し、必要な比較の数を減らすことで効率を向上させます。拡張機能が $allowed 配列に存在するかどうかを確認することで、その有効性をすぐに検証できます。

以上がPHP でファイル拡張子を効率的に検証するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。