Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无脂肪framewirk中的文件验证_Php_File Upload_Fat Free Framework - Fatal编程技术网

Php 无脂肪framewirk中的文件验证

Php 无脂肪framewirk中的文件验证,php,file-upload,fat-free-framework,Php,File Upload,Fat Free Framework,我想上传任意类型的多个文件,如果验证检查失败,我也想显示验证消息 我一直在关注f3文件。并且该代码仅在文件未通过验证检查时跳过文件移动 $f3->route('GET|POST|PUT /uploadfile', function($f3) use($db){ $f3->set('UPLOADS','uploads/'); $overwrite = false; Default: false $slug = true; $web = \Web::in

我想上传任意类型的多个文件,如果验证检查失败,我也想显示验证消息

我一直在关注f3文件。并且该代码仅在文件未通过验证检查时跳过文件移动

$f3->route('GET|POST|PUT /uploadfile',
function($f3) use($db){
 $f3->set('UPLOADS','uploads/');  

    $overwrite = false; Default: false
    $slug = true; 
    $web = \Web::instance();
    $files = $web->receive(function($file){  

            if($file['size'] > (2 * 1024 * 1024)) 
                return false;  

            // everything went fine, hurray!
            return true;  
        },
        $overwrite,
        $slug
    );     

}
);
验证失败时如何向用户显示消息?
非常感谢您的帮助。谢谢。

这取决于你如何处理这件事。基本上,在上载多个文件时,您可能希望跟踪阵列中产生的错误,因此可能如下所示:

$web = \Web::instance();
$errors=[];
$files = $web->receive(function($file) use ($errors) {  
        if($file['size'] > (2 * 1024 * 1024)) {
            $errors[ $file['name'] ] = 'File too large';
            return false;  
        }
        return true;  
    },
    $overwrite,$slug
);     
if ($errors) {
    $f3->status(413);
    echo json_encode($errors);
    exit();
}