Я использую полный путь к файлу при вызове $ grid-> storeFile ().Кроме того, да, я храню MIME-тип в метаданных.Итак, мой вызов выглядит так:
$id = $grid->storeFile($uploaded_file,
array(
'ownerNodeUuid' => $additional['nodeUuid'],
'ownerField' => $additional['fieldUuid'],
'originalFilename' => $name,
'type' => $type,
'size' => $size
),
array(
'safe' => 1
));
, и это создает следующую запись:
db.myPrefix.files.findOne();
{
"_id" : ObjectId("4ea1912af3e145731c000010"),
"ownerNodeUuid" : "74DAB098-4A6F-4172-84AB-EDAFAA9FE22D",
"ownerField" : "C58AD24C-7A8C-402A-BE82-2D315BC5F7C0",
"originalFilename" : "image001.png",
"type" : "image/png",
"size" : 73679,
"filename" : "/tmp/phpNhAmGK",
"uploadDate" : "Fri Oct 21 2011 16:35:06 GMT+0100 (BST)",
"length" : 73679,
"chunkSize" : 262144,
"md5" : "3e36620fdfebdf9fbf311e996a4bc46c"
}
, поэтому в этом случае $ uploaded_file = "/ tmp / phpNhAmGK";
Надеюсь, это поможет.В Интернете есть множество примеров, но я согласен, что документация библиотеки PHP иногда немного скудна ... Лучше всего думать об этом как о простой обертке вокруг функций оболочки MongoDB, поэтому первое, на что я обращаю внимание, это всегдасам сайт MongoDB, а затем, когда я понимаю, что что-то должно делать в MongoDB, я ищу документацию PHP для PHP-версии этой функциональности.