【发布时间】:2013-10-10 03:59:17
【问题描述】:
我正在尝试将文件推送到 Amazon s3 文件桶。
我正在通过 html 表单发布文件。
我尝试像这样生成文件的路径($file 是 foreach 的一部分,因为我需要在表单提交中支持多个文件。)
$file['tmp_name'].'/'.$file['name'];
这会输出这样的文件路径
/Applications/MAMP/tmp/php/phpZDcVQv/pdf.pdf
/Applications/MAMP/tmp/php/ 存在,但里面什么都没有。我已经为每个人设置了对该文件夹的读写权限。
我使用库将图像发布到亚马逊:https://github.com/tpyo/amazon-s3-php-class 它还抱怨我提供的文件路径不存在。它正在运行如下检查:
if (!file_exists($file) || !is_file($file) || !is_readable($file))
为什么没有添加文件? 我是否引用了错误的文件夹?带有代码的文件位于 /web/projectname/ 网上有人说php直接删除临时文件不清楚。这是在响应运行之后吗?我需要以某种方式解决这个问题吗?
产生问题的最简单代码:
foreach ($_FILES as $file) {
$filepath = $file['tmp_name'].'/'.$file['name'];
if(file_exists($filepath)){
echo 'true <br />';
}else{
echo 'false <br />';
}
}
这个 echo:es false 即使文件已经上传。
$filepath 包含我上面描述的路径。
【问题讨论】:
-
我们需要处理 HTML 表单的代码,特别是文件上传。
-
现在添加!谢谢。