2016-06-24 4 views
1

ファイルを入力するためのHTMLフォームがあり、入力したファイルが拡張子.xlsを使ってxlsファイルであるかどうかを確認します。 今ユーザが画像やスクリプトファイルの名前をabc.jpegからabc.xslに変更した場合、そのファイルはPHPコードで検証されません!拡張子に関係なく真にxlsファイルを検証するにはどうすればよいですか?検証xlsファイルをphpで拡張子なしで検証する

if(in_array($file_ext,$expensions)=== false) 
{ 
     echo "extension not allowed, please choose a .xls file."; 
    exit(); 
    } 
+0

このようなことが予想される場合は、検証しなければならない形式に基づいてファイルを読み取らなければなりません。 xlsファイルの場合は、そのイメージがピクセルをチェックする場合は内容を確認し、docファイルはその内容を取得して検証します。 – Jagadeesh

+0

http://stackoverflow.com/questions/23287341/how-to-get-mime-type-of-a-file-in-php-5-5? –

+0

@MisterHensonリンクが大いに助けてくれてありがとう – slash

答えて

0

代わりのファイル拡張子を使用するための PHPコードは、私はあなたがファイルのMIMEコンテンツタイプを返しますmime_content_typeを使用することをお勧めします。詳細についてはリンクhttp://php.net/manual/en/function.mime-content-type.phpを確認してください。

許可されたすべてのMIMEタイプ/ファイルタイプを持つ配列を準備し、mime_content_type関数を使用してアップロードしたファイルのMIMEコンテンツタイプをチェックすることができます。

echo mime_content_type( 'test.php'); // text/plainを返します

これは、クロスプラットフォーム(他のOS互換性)の問題でファイルの拡張子/ファイルの種類を検証するのに役立ちます。

関連する問題