diff --git "a/\350\260\242\345\250\237/20220518\344\275\234\344\270\232.md" "b/\350\260\242\345\250\237/20220518\344\275\234\344\270\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..6bc93ee0726a00fe7b12e471a44a5fedcbb81486 --- /dev/null +++ "b/\350\260\242\345\250\237/20220518\344\275\234\344\270\232.md" @@ -0,0 +1,77 @@ +```php + + + + + 1、实现一个文件上传,限制只能上传pdf和word格式,大小为1M以内。 + + +
+ 请传入文件: +
+ +
+ + + +``` + +```php +"; + + $b = $_FILES['my']['size']; // 获取文件大小,是按字节(B)来算的 + + $size = 1024 * 1024; // 限定1MB = 1024KB * 1024B + + if ($b < $size) { + + echo "大小合适" . "
"; + + $arr = array('pdf', 'docx'); // 存放可以存的文件类型 + + $name = $_FILES['my']['name']; // 获取文件的名字 + + $filename = explode('.', $name); //获取传入文件的后缀名 + + $file = end($filename); // 取数组最后一个值 + + $aa = in_array($file, $arr); // 把$file内容在$arr数组中找有没有 + + if ($aa === true) { + + echo "类型成功" . "
"; + + $tmp = $_FILES['my']['tmp_name']; // 获取临时文件存放地址 + + $tt = "./html" . $name; // 新的存放地址 "./html"是上一级的html文件夹 .name是文件 + + $xz = move_uploaded_file($tmp, $tt); // 把$tmp(文件临时地址) 传到 $tt(新地址区) + + if ($xz) { + + echo "保存成功" . "
"; + + echo "下载地址:下载"; // 一个a标签给用户下载的选择 + + } else { + echo "失败" . "
"; + } + + + } else { + echo "文件类型失败" . "
"; + } + + + } else { + echo "文件太大" . "
"; + } + + +} else { + echo "文件传入失败" . "
"; +} +``` \ No newline at end of file