如何解决上传的视频获得随机名称,而不是获得我在laravel上定义的名称
视频没有得到我定义的名称,而我的名字就是创建文件夹而不是视频名称。并且此文件夹使用随机名称获取视频。
控制器代码:
public function uploadVideo(Request $request){
$this->validate($request,[
'video' => 'required|mimes:mpeg,ogg,mp4,webm,3gp,mov,flv,avi,wmv,ts',]);
$video_upload = $request->file('video');
$update = Page::findOrfail(1);
if(isset($video_upload))
{
$videoName = 'video'.'.'.$video_upload->getClientOriginalExtension();
if(!Storage::disk('public')->exists('page'))
{
Storage::disk('public')->makeDirectory('page');
}
Storage::disk('public')->put('page/'.$videoName,$video_upload);
} else {
$videoName = $update->video;
}
$update->video = $videoName;
$update->save();
Toastr::success('Video Successfully Updated :)','Success');
return redirect()->back();
}
解决方法
您可以使用随机字符串作为视频名称:
$videoName = Str::random(10).'.'.$video_upload->getClientOriginalExtension();
,并使用 putFileAs 方法作为自定义文件名:
Storage::disk('public')->putFileAs('page',$video_upload,$videoName)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。