Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP编译器附件类型和尺寸限制_Php_Phpmailer - Fatal编程技术网

PHP编译器附件类型和尺寸限制

PHP编译器附件类型和尺寸限制,php,phpmailer,Php,Phpmailer,我有一个表单,我正在使用PHPMailer将该表单中的数据发送到我的电子邮件。用户也可以发送附件,但我有一个问题:如何使PHPMailer拒绝大于2Mb的附件,并且只允许iamge附件(没有其他类型的文档) 这是代码i,用于PHPMailer的多个电子邮件附件: foreach(array_keys($_FILES['fileAttach']['name']) as $key) { $source = $_FILES['fileAttach']['tmp_name'][$key];

我有一个表单,我正在使用PHPMailer将该表单中的数据发送到我的电子邮件。用户也可以发送附件,但我有一个问题:如何使PHPMailer拒绝大于2Mb的附件,并且只允许iamge附件(没有其他类型的文档)

这是代码i,用于PHPMailer的多个电子邮件附件:

foreach(array_keys($_FILES['fileAttach']['name']) as $key) {

   $source = $_FILES['fileAttach']['tmp_name'][$key]; 
   $filename = $_FILES['fileAttach']['name'][$key]; 

   $mail->AddAttachment($source, $filename);

}

您可以使用检查文件大小和类型

生成的代码可能如下所示:

$maxsize = 2 * 1024 * 1024; // 2 MB
$types = array('image/png', 'image/jpeg', 'image/gif'); // allowed mime-types

if(filesize($filename) < $maxsize && in_array(mime_content_type($filename),$types)){
  $mail->AddAttachment($source, $filename);
}

您可以使用检查文件大小和类型

生成的代码可能如下所示:

$maxsize = 2 * 1024 * 1024; // 2 MB
$types = array('image/png', 'image/jpeg', 'image/gif'); // allowed mime-types

if(filesize($filename) < $maxsize && in_array(mime_content_type($filename),$types)){
  $mail->AddAttachment($source, $filename);
}

用于检查文件大小。用于检查文件是否为图像使用,如果文件不是图像,则返回false,否则将返回包含mimetype的信息数组(如果不想检查特定图像类型)。

用于检查文件大小。用于检查文件是否为图像使用,如果不是图像,则返回false,否则它将返回一个包含mimetype的信息数组(如果不想检查特定图像类型)。

是的,我想做类似的事情,但我想知道是否有“内置”PHP编译器函数来执行此操作?但可能不是,我试图在网站上找到它……是的,我想做类似的事情,但我想知道是否有一些“内置”PHPMailer功能可以做到这一点?但可能不是,我试图在现场找到它。。。