【问题标题】:laravel how to save files with predefined namelaravel如何保存具有预定义名称的文件
【发布时间】:2021-01-26 10:56:20
【问题描述】:

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

**myfile.mp4**

并保存在公用文件夹中。

但我目前的代码为我的文件生成随机数,但我需要将名称命名为 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']);

【问题讨论】:

  • 随机数是由于您使用的 time() 函数。
  • @Atchiiii 如何 time() 删除和添加 myfile 。帮帮我

标签: laravel laravel-5 laravel-7


【解决方案1】:

你想要的是:

$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

【讨论】:

  • 我尝试了你的答案,但它像 myfile1611659509.mp4 这样过时,但我只需要 myfile.mp4 这个
  • @user12380208 好的,随你的便。所以试试这个:$input['file_id'] = 'myfile.'.$request->file_id->getClientOriginalExtension();
  • @Atchiiii 更新此 $input['file_id'] = 'myfile.'.$request->file_id->getClientOriginalExtension();在你的回答中谢谢你
  • @user12380208 完成了。您可以将其标记为答案
猜你喜欢
  • 2012-04-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多