上传的视频会得到随机的名字,而不是我在laravel上定义的名字



video没有得到我定义的名称,而这个我的名称制作了一个文件夹,而不是制作视频名称。这个文件夹用一个随机的名字获取视频。

控制器代码:

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)

最新更新