【发布时间】:2021-05-12 07:12:45
【问题描述】:
我不明白为什么当我上传大于 2M 的图像时,它们像往常一样进入服务器,而那些大于 100kb 和小于 2M 的图像却没有同时进入它们小于 100kb 的输入。如何只允许将小于 100kb 的内容上传到服务器
//My image array
$allowed = array('png', 'PNG');
//validate
if (in_array(pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION), $allowed) && ($_FILES['image']['size'] > 102400)) {
$errors['image'] = "image greater than 100kb not allowed!";
}
//my php.ini
upload_max_filesize=2M
post_max_size=8M
编辑: 在将upload_max_filesize=0.1M 更改为100kb 和post_max_size=30000M 后它可以验证所有文件,但是当用户上传更多100M 文件时,它需要一段时间才能显示错误消息,如何解决它
$type = array('png', 'jpg');
if(!empty($_FILES['image']['tmp_name']) && !in_array(pathinfo($_FILES['image']['tmp_name'], PATHINFO_EXTENSION), $type)) {
$errors['type'] = 'only png or jpg is allowed!';
}
【问题讨论】:
标签: php file-upload