PHP操作MongoDB GridFS 存储文件的详解

Pythia ·
更新时间:2024-11-14
· 700 次阅读

代码如下:
<?php
//初始化gridfs
$conn = new Mongo(); //连接MongoDB
$db = $conn->photos; //选择数据库
$grid = $db->getGridFS(); //取得gridfs对象

//gridfs有三种方式存储文件
//第一种直接存储文件
$id = $grid->storeFile("./logo.png");

//第二种存储文件二进制流
$data = get_file_contents("./logo.png");
$id = $grid->storeBytes($data,array("parame"=>'附加参数将随图片一起存入'));

//第三种保存直接表单提交的文件$_FILES
$id = $grid->storeUpload('upfile');
//相当于
$id = $grid->storeFile($_FILES[‘upfile'][‘tmp_name']);

//--------------以上是保存图片--下面开始读取图片----------------

//保存成功后返回$id = md5字符串
$logo = $grid->findOne(array('_id'=>$id)); //以_id为索引取得文件
header('Content-type: image/png'); //输出图片头
echo $logo ->getBytes(); //输出数据流
?>

您可能感兴趣的文章:深入了解MongoDB是如何存储数据的MongoDB系列教程(八):GridFS存储详解PHP MongoDB GridFS 存储文件的方法详解Spring Boot集成Shiro并利用MongoDB做Session存储的方法详解Nodejs使用Mongodb存储与提供后端CRD服务详解python将MongoDB里的ObjectId转换为时间戳的方法python根据时间生成mongodb的ObjectId的方法深究从MongoDB的ObjectId中获取时间信息MongoDB批量将时间戳转为通用日期格式示例代码MongoDB存储时间时差问题的解决方法



gridfs 存储 MongoDB PHP

需要 登录 后方可回复, 如果你还没有账号请 注册新账号