/**
* 上传文件
* @return string
*/
public function uploads()
{
$files = request()->file('file');
if (!$files) {
return '无上传文件';
}
$date = date('Ymd');
//规定上传文件的大小
$size = 1024 * 1024 * 2;
//规定上传文件的类型
$fileExt = ['xlsx', 'xls'];
if (!is_array($files)) {
//单文件上传
//echo '单文件';
//获取文件后缀
$getExt = $files->getOriginalExtension();
//获取文件名
$name = $files->getOriginalName();
//验证文件
if ($size < $files->getSize()) {
return '上传文件过大';
}
if (!in_array($getExt, $fileExt)) {
return '上传文件类型错误';
}
//上传文件到服务器并保存原文件名:ymd/xxxxx.xlsx
$savename = \think\facade\Filesystem::disk('public')->putFileAs($date, $files, $name);
if (!$savename) {
return '上传失败';
}
dump($savename);
} else {
//多文件上传
//echo '多文件';
$savename = [];
$count = count($files);
if ($count > 10) {
return '一次性最多只能上传10个文件';
}
foreach ($files as $file) {
//获取文件名
$name = $file->getOriginalName();
//获取扩展名
$getExt = $file->getOriginalExtension();
//验证文件
if ($size < $file->getSize()) {
return '上传文件过大';
}
if (!in_array($getExt, $fileExt)) {
return '上传文件类型错误';
}
$savename[] = \think\facade\Filesystem::disk('public')->putFileAs($date, $file, $name);
unset($file);
}
unset($files);
if (empty($savename)) {
return '上传失败';
}
dump($savename);
}
}
网友评论