这是我的控制器
public function store()
{
$data = Request::all();
$rules = [
'password' => 'required|confirmed|min:3',
'avatar' => 'required|image|mimes:jpeg,png,bmp',
'email' => 'required|email|unique:users',
'first_name' => 'required',
'last_name' => 'required',
'level' => 'required'
];
$validator = validator::make($data, $rules);
if($validator->passes()){
if(!file_exists(public_path("assets/uploads".date('/Y/m/d/').$data['avatar']->getClientOriginalName()))){
$path = public_path("assets/uploads".date('/Y/m/d/').$data['avatar']->getClientOriginalName());
Image::make($data['avatar']->getRealPath())->resize(200, 200)->save($path);
}
}
}
And Here is my error
无法将图像数据写入路径(/var/www/html/rnd/public/assets/uploads/2015/10/16/tes.jpg)
在uploads
文件夹中没有2015
文件夹,所以如果文件夹不存在,应该自动创建。
请纠正我的代码有什么问题?
感谢您的帮助。
请确保您要写入的文件夹存在,并且具有正确的所有者www-data:www-data
和正确的权限,再次记住
Image::make($data['avatar']->getRealPath())->resize(200, 200)->save($path);
如果文件夹不存在,上面的代码不会自动创建文件夹
https://github.com/Intervention/image/issues/56