(PECL mongo >=0.9.0)
MongoGridFS::storeUpload — Almacena un fichero subido en la base de datos
name
El nombre del fichero subido a almacenar. Debería corresponder con el atributo name del campo del fichero del formulario HTML.
metadata
Otros campos de metadatos a incluir en el documento de fichero.
Nota:
Estos cambpos podrían sobrescribir aquellos que serían creados automáticamente por el controlador, tal como está descrito es la documentación del núcleo de MongoDB para las » colecciones de ficheros. Algunos casos prácticos para este comportamiento serían especificar un chunkSize o _id personalizados para un fichero.
Nota:
El índice filename será rellenado con el nombre de fichero utilizado.
Devuelve el _id del documento de fichero guardado. Será un MongoId generado a menos que unless sea especificado explícitamente un _id en el parámetro extra
.
Versión | Descripción |
---|---|
1.2.5 | Cambiado el segundo parámetro a un array de metadatos. Antes de la versión 1.2.5, el segundo parámetro fue un string opcional reemplazando el nombre de archivo. |
Ejemplo #1 Ejemplo de forumulario HTML con MongoGridFS::storeUpload()
Suponga que tiene el siguiente formulario HTML:
<form method="POST" enctype="multipart/form-data"> <label for="username">Username:</label> <input type="text" name="username" id="username" /> <label for="pic">Please upload a profile picture:</label> <input type="file" name="pic" id="pic" /> <input type="submit" /> </form>
Si se quiere almacenar la imagen subida en MongoDB, podría realizarse lo siguiente en el script manejando el envío del formulario:
<?php
$m = new MongoClient();
$gridfs = $m->selectDB('test')->getGridFS();
$gridfs->storeUpload('pic', array('username' => $_POST['username']));
?>