$files=request()->file('face');
//使用这个代码,没有文件上传会报错
[0] Exception in Request.php line 1266
没有文件被上传!
可以这样写
if(!empty($_FILES['face']['name'])){
$data['goods_logo']= $this->upload_logo();
$goods=GoodsModel::find($data['id']);
}else{
unset($data['goods_logo']);
}
也可以这样写
if(request()->file()){
$data['goods_logo']= $this->upload_logo();
$goods=GoodsModel::find($data['id']);
}else{
unset($data['goods_logo']);
}
上传文件方法
public function upload_logo(){
//返回图片的路径
$file = request()->file('face');
if(empty($file)){
$this->error('没有上传图片');
}
$info = $file->validate(['size'=>10*1024*1024,'ext'=>'jpg,png,gif'])->move( '../uploads');
if($info){
// 成功上传后 获取上传信息
// 输出 jpg
$goodslogo= $info->getSaveName();
//生成缩略图
$goodlogofull='../uploads/'.$goodslogo;
$image =\think\Image::open($goodlogofull);
$image->thumb(300,300)->save($goodlogofull);
return $goodslogo;
}else{
// 上传失败获取错误信息
return $this->error($file->getError());
}
}