2012-05-31 17 views
6

Estoy empezando con el AWS S3 SDK para PHP, he logrado cargar una carpeta de elementos desde mi PC a un s3 usando PHP, hay alguna manera de especificar una carpeta dentro de ese cubo, por ejemplo, en lugar de cargar image.jpg a imagebucket, se carga a la carpeta llamada images inside 'imagebucket'.AWS S3 SDK para PHP, cargando en carpetas dentro de un cubo

+2

¿No funciona '$ s3-> create_object ($ bucket, 'folder/filename', $ options)'? – lanzz

+0

lanzz, usted señor es un dios entre los hombres. –

+1

Eche un vistazo a las herramientas s3cmd. Lo cual resuelve muchos problemas. http://s3tools.org/s3cmd –

Respuesta

5

No existe el concepto de carpetas en aws s3. Es solo para fines de visualización utilizado por Amazon AWS UI.

Actualmente almacena nombre de archivo como clave & datos como valor.

si almacena 5 archivos con carpetas diferentes, no van a crear 5 carpetas.

4

A partir de los documentos:

public function uploadDirectory($directory, $bucket, $keyPrefix = null, array $options = array()) 

Especificando $ keyPrefix, puede provocar que los objetos subidos a ser colocados en una carpeta virtual en el depósito de Amazon S3. Por ejemplo, si el nombre de $ cubo es mi-cubo y los $ keyPrefix es 'prueba /', entonces los archivos se cargarán a mi-cubo debajo de la prueba de la carpeta/virtual: https://my-bucket.s3.amazonaws.com/testing/filename.txt

Ver: http://docs.aws.amazon.com/aws-sdk-php/guide/latest/service-s3.html#uploading-a-directory-to-a-bucket

Cuestiones relacionadas