到目前为止,我已经在MongoDB上阅读了许多文档,并且有兴趣创建一个GridFS集合来存储文件。我已经创建了PHP脚本,它可以处理存储在MySQL(blob数据类型)中的文件,并且它正在工作。但是,我现在需要使用 GridFS。PHP驱动程序文档让我感到困惑。
注意:让我感到困惑的一点是 - 他们没有告诉如何创建"块"集合。没有指导方针。如果是这样,那么我怎么能期望驱动程序能够自动从"文件"集合中读取文件?
有人可以指出我一个页面,其中已经解释了如何创建一个?或者可以帮助我了解语言驱动程序对 GridFS 集合的"期望"?
问候瓦伊巴夫
浏览PHP文档,我发现了以下有关如何在GridFS集合中存储数据的手册:PHP GridFS手册。我对PHP没有任何具体知识,但在Java中我做了以下工作:
GridFS gridFS = new GridFS(<DB_NAME>, <GRID_FS_COLLECTION>);
GridFSInputFile inputFile = gridFS.createFile(<BINARY_DATA>);
inputFile.put("documentName", "nameOfTheFile");
inputFile.put("extension", "txt");
inputFile.save();
查看PHP手册,它将类似于PHP中的以下内容:
<?php
$grid = $db->getGridFS();
$grid->storeBytes($bytes, array("documentName" => "nameOfTheFile", "extension" => "txt"));
?>
手册中的示例还展示了一种直接存储文件的方法,而无需先获取字节字符串。