文档菜单
文档首页
/ / /
PHP库手册
/ /

MongoDB\GridFS\Bucket::uploadFromStream()

本页内容

  • 定义
  • 参数
  • 返回值
  • 错误/异常
  • 示例
  • 另请参阅
MongoDB\GridFS\Bucket::uploadFromStream()

创建一个新的GridFS文件并将可读流的全部内容复制到其中。

function uploadFromStream(
string $filename,
resource $source,
array $options = []
): mixed
$filename : 字符串
要创建的文件的filename
$source : 资源
可读流,从中读取新GridFS文件的内容。
$options : 数组

指定所需选项的数组。

名称
类型
描述
_id
混合型
用作文件文档标识符的值。默认为新的MongoDB\BSON\ObjectId对象。
chunkSizeBytes
整数
以字节为单位的块大小。默认为存储桶的chunkSizeBytes选项。
disableMD5
布尔值

是否禁用在存储文件时自动生成MD5。

默认为false。只有true将在2.0版本中得到支持。

版本1.4.

元数据
数组|对象
用于文件文档metadata字段的用户数据。如果没有指定,则不会在文件文档上设置metadata字段。

与新创建的 GridFS 文件关联的元数据文档的 _id 字段。如果没有指定 _id 选项,将默认使用一个新的 MongoDB\BSON\ObjectId 对象。

MongoDB\Exception\InvalidArgumentException 与参数或选项解析相关的错误。

MongoDB\Driver\Exception\RuntimeException 用于其他扩展级别的错误(例如连接错误)。

<?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);

输出结果将类似于

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

返回

rename()