就让我
她不在这里,她无处追寻,可她在我心里 -- 挥之不去
php使用mongo存储图片,gridfs

这里介绍php使用mongodb存储图片的实例:主要是三种方式,本地文件、表单提交、直接存文件:

<?php
$conf = "localhost:27018";
try{
    //初始化gridfs 
    $conn = new Mongo($conf); //连接MongoDB 
    $db = $conn->photos; //选择数据库 
    $grid = $db->getGridFS(); //取得gridfs对象 

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

    //第二种存储文件二进制流 
    $data = file_get_contents('./test.jpg');
    $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(); //输出数据流 
}catch(Exception $e){
    echo $e->getMessage();
}
?>
<< 上一篇 mongo健壮集群搭建,分片sharding加复制集replica PHP public private protected区别 下一篇 >>
文章标签
随意 | Created At 2014 By William Clinton | 蜀ICP备14002619号-4 |