Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
MongoDB Branding Shape
Click here >
Docs Menu

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

Un arreglo que especifica las opciones deseadas.

Nombre
Tipo
Descripción

_id

mixto

Valor que se utilizará como identificador del documento de archivo. Por defecto se utiliza 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.

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 a 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"
}