MIMEタイプの一覧、コピペ用です。
ソースは配列で、PHPであればどこでも使えます。
アップロード機能は、小規模なWebサービスでも必ず存在するでしょう。
そのアップロードのバリデーション(評価)は拡張子で確認してもいいけど
拡張子自体は偽装できるので、やはりMIMEタイプでも判断するべきだと思います。
そこで、ケース別で使えるMIMEタイプを以下に記載してます。
このMIMEタイプ配列の使い道は自由です。許可、あるいは拒否
「このMIMEタイプ忘れてるぞー」ってのがあれば教えてください。お願いします
画像・イメージファイル関連
jpg, jpeg, png, gif
$validates = array( 'arr_mime' => array('image/jpeg', 'image/pjpeg', 'image/png', 'image/x-png', 'image/gif'), );
jpg, jpeg, png, gif, bmp, ico
$validates = array( 'arr_mime' => array('image/jpeg', 'image/pjpeg', 'image/png', 'image/x-png', 'image/gif', 'image/bmp', 'image/x-icon', 'image/vnd.microsoft.icon'), );
2011-01-28 'image/x-png' を追加。id:kanonji さんありがとうございます。
資料・ドキュメント関連
pdfのみ
$validates = array( 'arr_mime' => array('application/pdf'), );
word, excel
$validates = array( 'arr_mime' => array('application/msword', 'application/excel', 'application/vnd.ms-excel', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',), );
pdf, word, excel, powerpoint, rtf
$validates = array( 'arr_mime' => array('application/pdf', 'application/msword', 'application/mspowerpoint', 'application/vnd.ms-powerpoint', 'application/excel', 'application/vnd.ms-excel', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'application/rtf'), );