我用它来保存上传的文件
$web = \Web::instance();
$uploadPath=$f3->get('uploadFolder');
$f3->set('UPLOADS',$uploadPath);
$overwrite = true;
$slug = true;
$files = $web->receive(function($file,$formFieldName){
if(file_exists($file['name'])){
//$file['name'] = $f3->get('uploadFolder').'rename.jpg'; // this is error, how to get path from config.ini here?
$file['name'] = 'assets/img/upload/rename.jpg';
move_uploaded_file($file['tmp_name'], $file['name']);
return false;
}else{
return true;
}
},
$overwrite,
$slug
);
$savedFile=array_keys($files)[0];
这仅在重命名之前获取文件路径,如何在重命名之后获取路径?
以及如何在回调函数中获取配置?
答案 0 :(得分:0)
您不需要从config获取任何上载目录,也不需要自己手动调用move_uploaded_file
。这就是$web->receive
方法的一部分。
$files
数组将包含完整的最终路径(包括重命名的文件名)。
当您在回调函数中返回true
时,上传的文件将移动到UPLOADS
F3变量中定义的上传文件夹中。如果需要,只需在回调函数中检查文件大小,mime类型等。这就是您通常需要做的。