fileinfo验证的错误消息

时间:2013-03-26 20:39:32

标签: php validation fileinfo

我收到错误消息使用下面的infofile脚本验证上传的文件是否为pdf并通过phpmailer发送。

第66行是“默认:”所在的位置。如果我删除默认值,则下一行变为错误,依此类推。不确定脚本有什么问题。有人可以请帮助。 THX。

  

解析错误:语法错误,意外'默认'(T_DEFAULT)   第66行/test.php

if ($_FILES['upload']['error'] !== UPLOAD_ERR_OK) {
die("Upload failed" . $_FILES['upload']['error']);
}
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime = finfo_file($finfo, $_FILES['upload']['tmp_name']);
$ok = false;
switch($mime) {
case 'application/pdf'
default:
   die("not permitted file type");
 $ok = true;
    foreach($_FILES['upload']['tmp_name'] as $uploadfile) 
    $mail->AddAttachment($uploadfile);
} 

1 个答案:

答案 0 :(得分:1)

您在第一次(非默认)case之后错过了冒号。应该是:

switch($mime) {
case 'application/pdf':
//                    ^
default:

此外:我不确定在第一种情况下您想要发生什么,但如果这是允许的情况,您还应该在break案例之前使用default。否则,解释器也将执行它(或其后的任何其他情况)。