代码之家  ›  专栏  ›  技术社区  ›  CL So

在无脂肪框架中,重命名后如何获取上传的文件名?

  •  0
  • CL So  · 技术社区  · 5 年前

    我用这个来保存上传的文件

    $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 回复  |  直到 5 年前
        1
  •  0
  •   ikkez    5 年前

    您不需要从config或call获取任何上传目录 move_uploaded_file 自己动手。。这都是问题的一部分 $web->receive 方法。

    这个 $files 数组将包含完整的最终路径(包括重命名的文件名)。

    当你回来的时候 true 在回调函数中,上载的文件被移动到 UPLOADS