哪种方法可以验证上传表单?
目前使用mime类型,但这不太合适 - 即使我在mime类型中寻找video
,也无法上传mpegs。
谢谢
汤姆
答案 0 :(得分:1)
这似乎有效:
switch (strtolower($_FILES["file"]["type"])){
case "application/msword":
case "application/pdf":
case "application/vnd.ms-excel":
case "application/vnd.ms-powerpoint":
case "application/zip":
case "image/gif":
case "image/jpeg":
case "image/png":
case "image/tiff":
case "text/plain":
case "video/mpeg":
case "video/x-mpeg2":
case "video/msvideo":
case "video/quicktime":
// do it
break;
default:
// don't do it
break;
}
对于其他任何人,这可能有助于查看http://www.sfsu.edu/training/mimetype.htm以添加您可能需要检查的其他mime类型。
答案 1 :(得分:0)
我想您要检查上传的文件是否是有效的视频文件。因此,您可以检查的一件事是文件扩展名(IE“.mpg”用于mpeg视频)。因为我所知道的webframework没有内部视频验证,所以你必须依靠一些外部程序/库来检查视频文件是否真的是一个视频文件。也许FFMPEG能够做到这一点。
答案 2 :(得分:0)
尝试这样的事情:
$mime = strtolower($_FILES["file"]["type"]);
$parts = explode("/",$mime);
switch($parts[0])
{
case 'video':
//Video file, use $parts[1] to check the video subtype
break;
case 'image':
break;
}