使用PHP,使用BSON
如何节省超过16MB的图像更小的MongoDB中,我需要一些帮助:使用PHP,使用BSON
我PHP创建Web应用程序和使用数据库MongoDB的。
因为它是一个银行nosql有想法,我需要将图像保存在适当的数据库。
在mongoDB文档的研究中,我发现我需要使用BSON类型来保存银行,因为它的图像小于16mb。
问题是我不知道如何。
我需要转换图像。 JPG中的字符串? 然后使用bson_encode?
我想是这样的:
$data = file_get_contents('../images/1.png');
$connection = new Mongo();
$db = $connection->aaaa;
$suspeitos = $db->imagens;
$susp = array(
'imagem' => $data,
);
$suspeitos->insert($susp);
但是,这是行不通的。
有人已经做了类似的事情,并可以帮助我保存与BSON mongoDB中的图像?
感谢
的MongoDB在文件系统构建呼吁内的MongoDB本身存储文件GridFS的。您将获得Shards和MongoDB的复制和查询的所有优点。这些文件被分解为大块,因此您不会遇到16MB文档大小的限制。
那么即使对于少于16MB的文件,最好的方法仍然是使用GridFS? – 2013-02-20 18:00:47
“最好”是一个相对术语,但是可以使用GridFS为用户存储简档图像,即使它们非常小。 – SomethingOn 2013-02-21 02:01:32
保存图像直接在数据库中,数据库的类型regaurdless通常是一个坏主意。如果您确实想要将文件存储在mongo中,请使用Mongo GridFS。 – datasage 2013-02-20 17:57:00