Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Laravel5.3下的Gridfs和mongo php库2.2驱动程序_Php_Laravel 5_Gridfs - Fatal编程技术网

使用Laravel5.3下的Gridfs和mongo php库2.2驱动程序

使用Laravel5.3下的Gridfs和mongo php库2.2驱动程序,php,laravel-5,gridfs,Php,Laravel 5,Gridfs,我们使用PHP7,最新的MongoDB PECL包(1.2.2)-Laravel 5.3-jenssegers/Laravel MongoDB 3.1 我想使用GridFS。它通常可用于MongoDB PECL包,但没有文档或工作代码示例 你可以经历这一切。这显示了如何将gridFS与Laravel mongodb结合使用,并且可能需要为此更新mongo db驱动程序 另一份供你参考 虽然这里没有提供示例代码,但如果您使用过Mongo和Laravel,它将对您有所帮助 希望它能帮助您您可以使用B

我们使用PHP7,最新的MongoDB PECL包(1.2.2)-Laravel 5.3-jenssegers/Laravel MongoDB 3.1

我想使用GridFS。它通常可用于MongoDB PECL包,但没有文档或工作代码示例

你可以经历这一切。这显示了如何将gridFS与Laravel mongodb结合使用,并且可能需要为此更新mongo db驱动程序

另一份供你参考

虽然这里没有提供示例代码,但如果您使用过Mongo和Laravel,它将对您有所帮助


希望它能帮助您

您可以使用
Bucket
类在mongo php library 2.2驱动程序上上传和下载文档到mongodb网格

//upload file
$bucket = \DB::connection('mongodb')->getMongoDB()->selectGridFSBucket();
$resource = fopen($file_path, "a+");
$file_id = $bucket->uploadFromStream($file_path, $resource);

//download file
$bucket = \DB::connection('mongodb')->getMongoDB()->selectGridFSBucket();
$file_metadata = $bucket->findOne(["_id" => $file_id]);
$path = $file_metadata->filename;

if(!file_exists($path)) {
    $downloadStream = $bucket->openDownloadStream($file_id);
    $stream = stream_get_contents($downloadStream, -1);
    $ifp = fopen($path, "a+");
    fwrite($ifp, $stream);
    fclose($ifp);
}

我还发现了那些链接。。。但如果没有代码示例和文档,就很难注意到$file\u id变量是一个ObjectId,如果您有一个字符串值,则需要转换为ObjectId:$file\u id=new\MongoDB\BSON\ObjectId($str\u file\u id);您可以在哪里使用laravel mongodb应用gridFS?如果是这样,您能否提供一段代码作为答案。这将非常有用