带有本地回退的AmazonS3 PHP库


PHP Library for Amazon S3 with local fallback

有没有一个库可以让PHP访问AmazonS3,让我使用完全相同的代码来读取/写入S3存储桶或对本地文件执行同样的操作?

我想使用S3,但我需要一种在本地运行应用程序进行测试的方法。

如果没有一个库直接支持切换到本地文件系统,那么是否有一个库是以良好的OOP方式编写的,这样我就可以使用相同的接口来制作它的本地文件系统版本?

我正在使用Symfony2,所以如果有捆绑包,那将是一个加分项,但我总是可以自己把它做成一个捆绑包。

更新

我现在正努力做这件事。我只需要操作"创建"、"存在"answers"删除",所以我制作了一个接口来处理它。然后我有一个"本地"实现和一个"S3"实现。

什么是一种干净的Symfony2方法,允许另一个类通过ID访问某个服务,并根据配置参数获得LocalStorageS3Storage类?我曾想过使用"class"参数,但我的S3服务依赖于底层AmazonS3类(使用AWS捆绑包)。

您正在寻找名为Gaufrette的库。还有可用于Symfony2的KnpGaufretteBundle。它拥有你所需要的一切。