tp6 图片上传

$fileArr = request()->file('file'); //接收文件
$file = $_FILES['file']; //得到传输的数据
$type = $file["type"]; //获得图片的类型
// $rdate = date("Ymd", time()); //获得时间
/**
* 判断接收文件是否为空
*/
if($fileArr == null){
return $this->show(
config("status.failed"),
config('message.failed'),
'未上传图片'
);
}
/**
* 截取上传文件名后缀
* 将文件名以.分割为数组
* 用PHP end函数取数组最后一个
* 即可得到上传文件后缀 $temp = explode(".", $_FILES["file"]["name"]);
*/
$temp = explode(".",$file["name"]);
$extension = end($temp);
/**
* 判断上传文件是否合法
* 判断截取上传文件名是否为
* jpeg,jpg,png其中之一
*/
if(!in_array($extension,array("jpeg","jpg","png"))){
return $this->show(
config("status.failed"),
config("message.failed"),
"上传图片不合法"
);
}
/**
* 调用disk方法
* 此时根目录为/public/storage 系统默认路径
* 再把文件移动至uploads下的img文件夹里
* 文件名用data
*/
$saveName = \think\facade\Filesystem::disk('public')->putFile("img",$fileArr,'data');

$data["name"] = $file["name"];
$data["url"] = '/storage/'.$saveName;
// $data["url"] = $http_x_forwarded_proto."://".$http_host.'/storage/'.$saveName;
return json(array("code" =>0, "msg" =>"操作成功", "type" => true,"data"=>$data));

/**仅作为个人学习笔记记录下**/

上一篇:tp6中实现毫秒级定时任务功能


下一篇:tp6查询一条结果返回数据并渲染