1つのファイルa.pngがあるとします。PHP では、拡張子と MIME タイプで検証します。
上記の検証を行ったフォームでは、png ファイルのみがアップロードされます。xyz.pdf を a.png にすると有効になります。
.NET のようにヘッダー署名でファイルを検証したいと思います。
また、アップロード中に画像が破損している場合、画像が破損しているためアップロードできませんというメッセージが表示されます。
PHP では、exif_imagetype を使用する必要がありますか? ビデオ、オーディオ、その他のファイルなどのファイルはどうですか?