0

我想知道如何避免 Laravel 中的文件冲突。假设我有两个具有相同文件名的用户,并且都受到影响,因为其中一个更改了文件,我该如何避免这种情况。这是我的代码

 $file = $request->file('file');
      $myfilename = $vid->getClientOriginalName().uniqid();
      $mypath = $file->storeAs(
'video',
$myfilename);
      $location = public_path('/allvids',$myfilename);
      $file->move($location);
      $file->profile = $myfilename;
4

1 回答 1

0

作为一般规则,您应该使用生成的文件名保存文件。将实际文件名存储在数据库中,然后按原样提供它并没有错,但通常,您应该生成一个。有几种方法可以做到这一点。

time()使用 unix 时间戳

uniqid()生成唯一ID

个人建议第二种。

另外,你在做;

$file->store('video', $myFilename)

你想要的是;

$file->storeAs('video', $myFilename)

store()方法将使用文件的原始文件名。

于 2018-03-11T19:14:10.957 回答