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

MongoDB\GridFS\Bucket::downloadToStreamByName()

本页内容

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

通过文件名选择GridFS文件并将其内容复制到可写流中。

function downloadToStreamByName(
string $filename,
resource $destination,
array $options = []
): void
$filename : 字符串
要下载的文件的文件名。
$destination : 资源
可写流,GridFS文件的内容将写入其中。
$options : 数组

指定所需选项的数组。

名称
类型
描述
修订版
整数

要检索的文件的修订版。具有相同文件名的文件将通过它们的uploadDate字段区分。

修订版号定义如下

  • 0 = 原始存储文件

  • 1 = 第一个修订版

  • 2 = 第二个修订版

  • 等等...

  • -2 = 第二个最近修订版

  • -1 = 最新的修订版

默认为-1(即最新修订版)。

MongoDB\GridFS\Exception\FileNotFoundException 如果没有找到符合选择标准的文件。

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);
$bucket->uploadFromStream('filename', $stream);
$destination = fopen('php://temp', 'w+b');
$bucket->downloadToStreamByName('filename', $destination);
var_dump(stream_get_contents($destination, -1, 0));

输出将类似于

string(6) "foobar"

返回

downloadToStream()