Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

MongoDB\GridFS\Bucket::uploadFromStream()

MongoDB\GridFS\Bucket::uploadFromStream()

Crea un nuevo archivo GridFS y copia en él el contenido de un flujo legible.

function uploadFromStream(
string $filename,
resource $source,
array $options = []
): mixed
$filename : string
El filename del archivo para crear.
$source : resource
Flujo legible, del cual se leerán los contenidos del nuevo archivo GridFS.
$options : arreglo

Una matriz que especifica las opciones deseadas.

Nombre
Tipo
Descripción

_id

mixto

Valor que se utilizará como identificador del documento de archivo. Se configura por defecto a un nuevo MongoDB\BSON\ObjectId objeto.

tamaño del fragmento en bytes

entero

El tamaño de fragmento en bytes. Por defecto, utiliza la opción de chunkSizeBytes del bucket.

deshabilitarMD5

booleano

Indica si se debe deshabilitar la generación automática de MD5 al almacenar archivos.

Por defecto es false. Solo true será soportado en 2.0.

Nuevo en la versión 1.4.

metadata

arreglo|objeto

Datos de usuario para el campo metadata del archivo del documento. Si no se especifica, el campo metadata no se establecerá en el documento del archivo.

El campo _id del documento de metadatos asociado con el archivo GridFS recién creado. Si no se especifica la opción _id, se usará de forma por defecto un nuevo objeto MongoDB\BSON\ObjectId.

MongoDB\Exception\InvalidArgumentException por errores relacionados con el análisis de parámetros u opciones.

MongoDB\Driver\Exception\RuntimeException para otros errores en el nivel de extensión (por ejemplo, errores de conexión).

<?php
$bucket = (new MongoDB\Client)->test->selectGridFSBucket();
$stream = fopen('php://temp', 'w+b');
fwrite($stream, "foobar");
rewind($stream);
$id = $bucket->uploadFromStream('filename', $stream);
var_dump($id);

La vista de salida se ilustraría como sigue:

object(MongoDB\BSON\ObjectId)#3009 (1) {
["oid"]=>
string(24) "5acf81017e21e816e538d883"
}

Volver

renameByName()

En esta página