当前位置: 首页 > 编程笔记 >

PHP  MongoDB GridFS 存储文件的方法详解

卞博简
2023-03-14
本文向大家介绍PHP  MongoDB GridFS 存储文件的方法详解,包括了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(); 
//输出数据流?>

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

 类似资料:
  • 本文向大家介绍PHP基于文件存储实现缓存的方法,包括了PHP基于文件存储实现缓存的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP基于文件存储实现缓存的方法。分享给大家供大家参考。具体如下: 在一些数据库数据记录较大,但是服务器有限的时候,可能一条MySQL查询就会好几百毫秒,一个简单的页面一般也有十几条查询,这个时候也个页面加载下来基本要好几秒了,如果并发量高的话服务器基本就瘫

  • 本文向大家介绍详解Android文件存储,包括了详解Android文件存储的使用技巧和注意事项,需要的朋友参考一下 摘要 其实安卓文件的操作和java在pc环境下的操作并无二致,之所以需要单独讲解是因为安卓系统提供了不同于pc的访问文件系统根路径的api,同时对一个应用的私有文件做了统一的管理。根据我的经验,初学者在这部分感到很容易混淆内部存储和外部存储两个概念。 其实安卓文件的操作和java在p

  • 本文向大家介绍PHP使用Redis替代文件存储Session的方法,包括了PHP使用Redis替代文件存储Session的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP使用Redis替代文件存储Session的方法。分享给大家供大家参考,具体如下: PHP默认使用文件存储session,如果并发量大,效率非常低。而Redis对高并发的支持非常好,所以,可以使用redis替代文件

  • 本文向大家介绍android数据存储之文件存储方法,包括了android数据存储之文件存储方法的使用技巧和注意事项,需要的朋友参考一下 文件存储是 Android 中最基本的一种数据存储方式,它不对存储的内容进行任何的格式化处理,所有数据都是原封不动的保存到文件当中的。 概述 文件存取的核心就是输入流和输出流。 Android文件的操作模式 文件的相关操作方法 文件读写的实现 openFileOu

  • 本文向大家介绍php上传文件并存储到mysql数据库的方法,包括了php上传文件并存储到mysql数据库的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php上传文件并存储到mysql数据库的方法。分享给大家供大家参考。具体分析如下: 下面的代码分别用于创建mysql表和上传文件保存到mysql数据库 创建mysql表: 上传文件并保存到mysql中,通过insert语句插入 希望本

  • 本文向大家介绍实例详解Android文件存储数据方式,包括了实例详解Android文件存储数据方式的使用技巧和注意事项,需要的朋友参考一下 总体的来讲,数据存储方式有三种:一个是文件,一个是数据库,另一个则是网络。下面通过本文给大家介绍Android文件存储数据方式。 1.文件存储数据使用了Java中的IO操作来进行文件的保存和读取,只不过Android在Context类中封装好了输入流和输出流的