PHP MongoDB GridFS 存储文件的方法详解
<?php //初始化gridfs $conn = new Mongo(); //连接MongoDB $db = $conn->photos; //选择数据库 $grid = $db->getGridFS(); //取得gridfs对象
gridfs有三种方式存储文件
第一种直接存储文件
$id = $grid->storeFile("./logo.png");
第二种存储文件二进制流
$data = http://www.bkjia.com/PHPjc/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+php实现简单的增删改查
windows上安装mongodb的php扩展 下载地址https://s3.amazonaws.com/drivers.mongodb.org/php/index.html 找到对应的php版本的dll文件,下载php_mongo.dll,放到php安装目录下的ext目录中,修改php.ini,添加一项extension=php_mongo.dll,没有找到支持php7的dll 获取MongoClient对象,new出来 获取数据库对象db,通过MongoClient对象的数据库属性,$Mon
-
MongoDB学习笔记之GridFS使用介绍
GridFS简介 GridFS是MongoDB中的一个内置功能,可以用于存放大量小文件. GridFS使用 MongoDB提供了一个命令行工具mongofiles可以来处理GridFS, 列出所有文件: 复制代码 代码如下: mongofiles list 上传一个文件: 复制代码 代码如下: mongofiles put xxx.txt 下载一个文件: 复制代码 代码如下: mongofiles get xxx.txt 查找文件: 复制代码 代码如下: //会查找所有文件名中包含"xxx&qu
-
PHP操作MongoDB GridFS 存储文件的详解
复制代码 代码如下: <?php //初始化gridfs $conn = new Mongo(); //连接MongoDB $db = $conn->photos; //选择数据库 $grid = $db->getGridFS(); //取得gridfs对象 //gridfs有三种方式存储文件 //第一种直接存储文件 $id = $grid->storeFile("./logo.png"); //第二种存储文件二进制流 $data = get_file_cont
-
C# 对MongoDB 进行增删改查的简单操作实例
运用到的MongoDB支持的C#驱动,当前版本为1.6.0 下载地址:https://github.com/mongodb/mongo-csharp-driver/downloads 1,连接数据库 复制代码 代码如下: /// <summary> /// 数据库连接 /// </summary> private const string conn = "mongodb://127.0.0.1:27017";
-
MongoDB.NET 2.2.4驱动版本对Mongodb3.3数据库中GridFS增删改查
本文实例为大家分享了针对Mongodb3.3数据库中GridFS增删改查,供大家参考,具体内容如下 Program.cs代码如下: internal class Program { private static void Main(string[] args) { GridFSHelper helper = new GridFSHelper("mongodb://localhost", "GridFSDemo", "Pictures"); #re
-
PHP简单操作MongoDB的方法(安装及增删改查)
本文实例讲述了PHP简单操作MongoDB的方法.分享给大家供大家参考,具体如下: php操作MongoDB的话首先从网上下载MongoDB的扩展包,https://github.com/mongodb/mongo-php-driver/downloads,选择对应的扩展包. 这是我下的,然后解压,VC6适合apache,VC9适合IIS,ts(thread safe)指PHP以模块形式运行的. 然后把其中的php_mongo.dll放在PHP中的ext文件夹中,然后在PHP.INI里面加入ex
-
MongoDB系列教程(八):GridFS存储详解
GridFS简介 mongoDB的文档以BSON格式存储,支持二进制的数据类型,当我们把二进制格式的数据直接保存到mongoDB的文档中.但是当文件太大时,例如图片和视频等文件,每个文档的长度是有限的,于是mongoDb会提供了一种处理大文件的规范--GridFS. GridFS实现原理 在GridFS数据库中,默认使用fs.chunks 和fs.files来存储文件,其中fs.files集合存放文件的信息,fs.chunks存放文件的数据,一个fs.files集合中的一条记录内容如下,即一个f
-
MongoDB错误32-bit servers don't have journaling enabled by default解决方法
每次启动MongoDB时总是会收到如下 Unclean shutdown 提示,总结了一下出现该问题的原因及解决方法. 提示如下: 复制代码 代码如下: ************** D:\GREENT~1\PowerCmd>mongod --auth -dbpath C:\mongo\MongoDB\mongo\data Wed May 16 16:06:50 Wed May 16 16:06:50 warning: 32-bit servers don't have journaling e
-
MongoDB插入数据的3种方法
insert()方法: 下面是在inventory集合中插入一个三个字段的文档: 复制代码 代码如下: db.inventory.insert( { _id: 10, type: "misc", item: "card", qty: 15 } ) 在实示例中,文档有一个用户指定的值为10的_id字段,这个值必须在inventory集合中唯一.update()方法: 调用update()方法使用upsert标志创建一个新文档当没有匹配查询条件
-
Mongodb批量删除gridfs文件实例
平台有大量的图片已经不用了,数量级达到百万张,差不多100G的空间,放着不管是不是太浪费了? 复制代码 代码如下: db.fs.files.find({filename:/xxx/}).forEach(function(n) {db.fs.files.update({filename:u.filename},{$set:{filename:newname}},false,true)}} //正则批量更改为固定名称,便于删除. mongofiles -port 12345 -d xxx delet
随机推荐
- Vue表单实例代码
- angularjs指令之绑定策略(@、=、&)
- 使用脚本实现故障时自动重启Apache
- IOS React等Title不显示问题解决办法
- Python应用03 使用PyQT制作视频播放器实例
- php处理json时中文问题的解决方法
- 浅析JavaScript基本类型与引用类型
- 大幅提升MySQL中InnoDB的全表扫描速度的方法
- php连接oracle数据库的核心步骤
- JavaScript仿支付宝密码输入框
- 分享下GET和POST的真正区别
- 深入Ajax代理的Java Servlet的实现详解
- 深入理解JavaScript系列(6):S.O.L.I.D五大原则之单一职责SRP
- Node.js的MongoDB驱动Mongoose基本使用教程
- Android中pendingIntent与Intent的深入分析
- jQuery实现贪吃蛇小游戏(附源码下载)
- vue使用jsonp抓取qq音乐数据的方法
- Java 继承原理与用法实例分析
- nginx黑名单和django限速,最简单的防恶意请求方法分享
- gem install redis报错的解决方案