我正在尝试在 Laravel 5.6 中重命名一个文件
当我对文件进行物理重命名时这很好用,但是当我只是改变大小写时 - 它会抛出一个错误:
League\Flysystem\FileExistsException: File already exists at path
例子
old path: Music/The Corrs/The Corrs - What Can I Do.mp3
new path (DO): Music/The Corrs/The Corrs - What Can I DO.mp3
代码
Storage::disk($disk)->move($old, new);
我该如何解决这个问题,以便在情况发生变化时重命名/移动文件?
最佳答案
在 Windows 上,文件名不区分大小写。所以名称为uppercase.txt
和UPPERCASE.txt
的文件是相同的,但是一个文件夹中不可能有两个同名的文件。
重命名时,文件实际上是“移动”到另一个名称。但是文件已经存在,所以你会得到一个错误。
我建议先将文件存储在临时文件夹中以重命名或在重命名之前为文件使用临时名称。
关于php - Laravel 重命名文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51729309/