1

我正在尝试对 Laravel 中的文件输入使用自定义验证规则。文件输入名称是“照片”。我正在尝试将名为“validate_art”的规则应用于此文件输入。我知道有“图像”验证规则,但我想将我自己的自定义规则应用于此文件输入。

这是代码:

  $rules = array('name'=>'required|unique:user,name','startyear'=>'numeric','endyear'=>'numeric'
    ,'photo'=>'validate_art');
    Validator::extend('validate_art',function($attribute,$value,$parameters){
    // returning false just for testing purpose
    return false;
    });

发生的情况是,它根本不会将规则应用于该字段。当我尝试将此规则用于其他领域进行测试时,它可以正常工作。难道我做错了什么?或者自定义验证不能应用于文件输入?请某人,对此有所了解。我真的很感激。

4

1 回答 1

0

首先你应该修改你的输入数据

    foreach ($inputs as $k=>$input){
        if($input instanceOf \Symfony\Component\HttpFoundation\File\UploadedFile)
            $inputs[$k]=$_FILES[$k];
    }

然后将 $input 发送到验证器$validator=Validator::make($input,$rules)

于 2016-03-01T08:05:33.500 回答