学堂 学堂 学堂公众号手机端

laravel中上传图片并建软链接进行访问的方法及代码是什么

lewis 6年前 (2019-04-12) 阅读数 13 #技术
在实际应用中,我们有时候会遇到“laravel中上传图片并建软链接进行访问的方法及代码是什么”这样的问题,我们该怎样来处理呢?下文给大家介绍了解决方法,希望这篇“laravel中上传图片并建软链接进行访问的方法及代码是什么”文章能帮助大家解决问题。


我们同时上传的还有昵称,图片是保存在resource表里面,,


对应在userProfile有关联id;利用laravel自带上传很方便,,

但是不能直接访问,,所以需要建立软链接:

PHP artisan storage:link

执行该条命令会在public里面生成存储图片的文件夹,就可以通过地址访问了

public function uploadAvatar(Request $request)
{
 $validator = Validator::make($request->all(), [
  'nickname' => 'required|string|max:8',
  'avatar' => 'required',
 ]);
 if ($validator->fails()) {
  return $this->responseForJson(ERR_ACCESS_DENID, $validator->errors());
 }
 $user_id=Auth::id();
 $avatar = $request->file('avatar')->store('/public/'.date('Y-m-d').'/avatars');
 $avatar = Storage::url($avatar);
 
 $resource=Resource::insertGetId(['type'=>1,'resource'=>$avatar]);
 $Data=['user_id'=>$user_id,'avatar'=>$resource,'nickname'=>$request->nickname];
 try {
  $edit = UserProfile::where('user_id',$user_id)->update($Data);
  if ($edit) {
   return $this->responseForJson(ERR_OK, 'upload success');
  }
  return $this->responseForJson(ERR_CREATE, 'upload fail');
 }catch (\Exception $exception) {
  return $this->responseForJson(ERR_ACCESS_DENID, $exception->getMessage());
 }
}

现在大家对于laravel中上传图片并建软链接进行访问的方法及代码是什么的内容应该都有一定的认识了吧,希望这篇能对大家有所帮助。最后,想要了解更多,欢迎关注博信,博信将为大家推送更多相关的文章。
版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门