【发布时间】:2014-05-20 01:33:14
【问题描述】:
在本例中,“路径”是服务器中(上传的)临时文件的路径?或客户端设备中的文件路径?我正在从 $_FILES 读取文件元数据,但不知道在哪里读取文件以存储在数据库中。请帮忙。 (对不起我的英语)
<?php
// connect to the ‘myGrid’ GridFS
$m = new Mongo();
$db = $m->myDB;
$myGrid = $db->getGridFS('myGrid');
$some_file='path of your video or audio file';
// some extra data you may want to store with your file
$data_array = array(
'mime' => mime_content_type($some_file),
'timestamp' => time(),
);
// store a file into the GridFS
$myGrid->storeFile($some_file, $data_array);
?>
【问题讨论】:
-
$_FILES['foo']['tmp_name']是 PHP 在服务器上临时存储文件的位置。但请注意:将文件存储在数据库中通常是一个坏主意,并且很少有使用案例可以证明这一点。 -
对于文件(文件
-
大小无关紧要。如果您想保护对文件的直接访问,请不要将它们放在您这边的文档根目录中。将它们放入数据库是一种巨大的浪费 - 考虑 100 个人都在下载同一个文件 - 你必须从数据库中提取相同的文件 100 次。
-
@MarcB 可能还不应该让新手陷入困境:)
标签: php mongodb file-upload gridfs