我不明白Gaufrette和symfony2。
This在我看来它只适用于textfiles / textcontent。 我可以创建一个文件但不能从本地源(即路径)复制。
我想做的是这样的事情:
$adapter = new LocalAdapter($realpath);
$filesystem = new Filesystem($adapter);
$filesystem->fromUploadedFile($tempPathOfUploadedFile,$idForGaufrette);
如何存储图像以及如何在用户请求时处理它的输出?
更新:
Symfony\Component\HttpFoundation\File\UploadedFile
对象中存在的现有私有属性$ path?答案 0 :(得分:3)
方法copy(x, y)
未实现,但如果要存储文件,可以使用该方法移动它
rename($key, $new)
在Filesystem Class中定义。
为了在用户请求时处理输出,您只需要一个指向图像路径的链接(可能在数据库中)。所以你不需要文件系统(你可以使用has($key)
方法检查文件是否存在)。
在所有情况下,使用适配器Local在本地工作。
如果您需要像“ftp:// mydomain / myPicture”这样的流包装器,我最近发送PR来配置config.yml中的流包装器,并注册您想要的filiesystems及其域。 / p>
答案 1 :(得分:2)
获取tmp文件名:
$file->getPathName(); // /tmp/filename
其中$ file是Symfony\Component\HttpFoundation\File\UploadedFile
对象。