有没有一个库可以让PHP访问AmazonS3,让我使用完全相同的代码来读取/写入S3存储桶或对本地文件执行同样的操作?
我想使用S3,但我需要一种在本地运行应用程序进行测试的方法。
如果没有一个库直接支持切换到本地文件系统,那么是否有一个库是以良好的OOP方式编写的,这样我就可以使用相同的接口来制作它的本地文件系统版本?
我正在使用Symfony2,所以如果有捆绑包,那将是一个加分项,但我总是可以自己把它做成一个捆绑包。
更新
我现在正努力做这件事。我只需要操作"创建"、"存在"answers"删除",所以我制作了一个接口来处理它。然后我有一个"本地"实现和一个"S3"实现。
什么是一种干净的Symfony2方法,允许另一个类通过ID访问某个服务,并根据配置参数获得LocalStorage
或S3Storage
类?我曾想过使用"class"参数,但我的S3服务依赖于底层AmazonS3类(使用AWS捆绑包)。
您正在寻找名为Gaufrette的库。还有可用于Symfony2的KnpGaufretteBundle。它拥有你所需要的一切。