我有一系列处理文件上传的功能;验证上传的文件(检查大小,类型等),然后将上传的文件发送到Cloudfiles - 这一切都正常。
我想使用相同的功能将本地文件(以前上传并保存到网络服务器的文件)保存到Cloudfiles。
是否可以像刚刚上传的那样打开本地文件,即格式为:
array(
'name' => '',
'type' => '',
'tmp_name' => '',
'error' => '',
'size' => ''
);
我猜我需要手动重新创建这个结构 - 如果是这样,我将如何保存文件内容?
或者,我是否应该更改现有的验证功能以接收不同格式的文件数据?
答案 0 :(得分:0)
不,它们根本不同。
name
是客户端文件的名称。我想你可以用磁盘上的文件名替换。
type
是内容类型(通常称为MIME类型),它不是由许多文件系统存储的。您必须use magic numbers根据文件内容检测类型。或者,如果有扩展名,您可以猜测文件类型。两种方法都有其缺点。
tmp_name
完全不相关,因为您已经在磁盘上安装了该文件。
error
没有意义,因为文件没有上传,因此没有进行任何操作。
size
是你唯一可以复制的东西。
我不明白为什么你还需要所有这些信息。客户端的这些信息都不应用于任何类型的验证。