laravel 如何使用预定义的名称保存文件

laravel how to save files with predefined name

在 laravel 控制器中,我正在尝试将我上传的每个视频文件重命名为

**myfile.mp4**

并保存在 public 文件夹中。

但我现在的代码为我的文件生成了随机数,但我需要将名称命名为 myfile

我的控制器

$input['file_id'] = time() . '.' . $request->file_id->getClientOriginalExtension();
        $folder1 = public_path('/public');
        $path1 = $folder1 . $input['file_id']; // path 1
        $request->file_id->move($folder1, $input['file_id']);

你想要的是:

$input['file_id'] = 'myfile.'.$request->file_id->getClientOriginalExtension();

但是你不能给所有的视频起相同的名字'myfile',因为每一个记录都会被前一个覆盖,你需要唯一的名字。 为此,您可以这样做,例如:

 $input['file_id'] = 'myfile'.time().'.'.$request->file_id->getClientOriginalExtension();
 // here, time() represents the time at which the video was saved in your '/public' file

 $input['file_id'] = 'myfile'.date().'.'.$request->file_id->getClientOriginalExtension();
 // here, date() represents the date the video was saved in your '/public' file