我有一个phpmailer,它通过从文件输入字段循环遍历文件数组来附加文件。我怎样才能使它只允许PDF或DOC。如果尝试其他操作,脚本将停止并给出一个错误:"不支持文件类型。"只支持PDF或DOC格式。"
有什么建议吗?
foreach(array_keys($_FILES['files']['name']) as $key) {
$source = $_FILES['files']['tmp_name'][$key];
$filename = $_FILES['files']['name'][$key];
$mail->AddAttachment($source, $filename);
}
您需要查看$_FILES['files']['type']并确保它与您想要的mime类型匹配。
foreach ($_FILES as $file) {
if ($file['files']['type'] == 'application/msword'
|| $file['files']['type'] == 'application/pdf'
) {
$source = $file['files']['tmp_name'][$key];
$filename = $file['files']['name'][$key];
$mail->AddAttachment($source, $filename);
}
else {
die("You may only upload PDF and Microsoft Word documents through this form.");
}
}