制作upload.html文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>文件上传</title>
</head>
<body>
<form action="upload.php" method='post' enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="2097152">
<input type="file" name="file" value="请选择要提交的文件" accept="image/*">
<input type="submit" value="上传">
</form>
</body>
</html>
<input type="hidden" name="MAX_FILE_SIZE" value="2097152">
对于在页面存储但不需要显示出来的值,我们通常使用上面的代码来存储。
制作upload php文件
<?php
var_dump($_FILES); //显示上传文件的具体情况,这个不加也可以
$error=$_FILES['file']['error']; //$error用来判断文件是否错误
if($error){
switch ($error){
case 1:echo '上传的文件超过了php.ini中upload_max_filessize选项中限定的值';exit();
}
}
$size=$_FILES['file']['size']; //$size用来判断文件大小
if($size>2097152){
exit("文件大于2M,不能上传");
}
$allowExt=['gif','jpg','jpeg','png']; //只允许上传gif,jpg,jpeg,png后缀的文件
$info=pathinfo($_FILES['file']['name']); //pathinfo() 函数以数组的形式返回文件路径的信息。
$fileExt=$info['extension'];
if(!in_array($fileExt,$allowExt)){
exit("文件类型错误");
}
$path="res";
if(!file_exists($path)){
mkdir($path);
} //创建文件夹,将上传的临时文件保存在此
move_uploaded_file($_FILES['file']['tmp_name'],$path.'/'.uniqid().'.'.$fileExt);
//将临时文件保存到本地
?>
结果