【发布时间】:2020-11-01 00:02:38
【问题描述】:
此脚本用于上传小于 2MB 的图像文件。我想在文件上传之前检查文件大小。因为我尝试显示此警告,如果上传文件大小超过 20MB:
警告:20402819 字节的 POST 内容长度超过了 Unknown on line 0 中 8388608 字节的限制
我不想更改 php.ini 文件以增加最大上传文件大小...我不想上传超过 2MB。
请帮忙....
if(isset($_FILES['image'])){
$errors= array();
$file_name = $_FILES['image']['name'];
$file_size =$_FILES['image']['size'];
$file_tmp =$_FILES['image']['tmp_name'];
$file_type=$_FILES['image']['type'];
$file_ext= explode('.',$_FILES['image']['name']);
$file_ext= $file_ext[count($file_ext)-1];
$file_ext= strtolower(end(explode('.',$_FILES['image']['name'])));
$extensions= array("jpeg","jpg","png");
if(in_array($file_ext,$extensions)=== false){
$errors[]="extension not allowed, please choose a JPEG or PNG file.";
}
if($file_size > 2097152){
$errors[] = 'File size must not exceed 2 MB.';
}
if(!empty($filename)){
$errors[] = "Please choose a file before you upload.";
}
if(empty($errors)==true){
move_uploaded_file($file_tmp,"uploads/" . $file_name);
$file_location = "uploads/" . $file_name;
submitFile($file_location);
}else{
print_r($errors);
}
}
【问题讨论】:
-
这在 php 中是无能为力的。您需要在客户端执行此操作,因此使用 javascript 来检查请求 before 它甚至被发送。
标签: php post file-upload