我正在构建的这个Symfony网络api需要您的帮助。长话短说,它在Symfony之上使用API平台。根据文档,我添加了发布文件的功能,但是我遇到的问题是冲突。我需要一种重命名文件的好方法。这些文件用作UploadedFile类。
那是我对移动功能的了解,我已经尝试过了,但是在我当前的设置中,这不是一个好选择。
控制器代码示例:
HW6
图像实体:
public function __invoke(Request $request): Images
{
$uploadedFile = $request->files->get('file');
if (!$uploadedFile) {
throw new BadRequestHttpException('"file" is required');
}
$mediaObject = new Images();
$mediaObject->file = $uploadedFile;
...
$this->validate($mediaObject, $request);
$em = $this->managerRegistry->getManager();
$em->persist($mediaObject);
$em->flush();
return $mediaObject;
}
所以问题是,有一种好方法可以重命名发布到Symfony应用程序中的文件,而无需使用move功能?
答案 0 :(得分:1)
找到了适合我的解决方案: https://github.com/dustin10/VichUploaderBundle/blob/master/Resources/doc/namers.md#file-namer
VichUp具有一项内置服务,可自动重命名文件以避免冲突以及目录规划。
希望它可以帮助其他人。
答案 1 :(得分:0)
您可以尝试使用rename()函数,但是通常使用mov()。
致谢!