Php 自定义阵列的验证-流明

Php 自定义阵列的验证-流明,php,arrays,validation,laravel,lumen,Php,Arrays,Validation,Laravel,Lumen,如何在Lumen framework中对自定义阵列执行验证。e、 g: 示例阵列: $params = array('name' => 'john', 'gender' => 'male'); 我尝试过这样的事情,但没有成功;t工作: $validator = Validator::make($params, [ 'name' => 'required',

如何在Lumen framework中对自定义阵列执行验证。e、 g:

示例阵列:

$params   = array('name' => 'john', 'gender' => 'male');
我尝试过这样的事情,但没有成功;t工作:

$validator = Validator::make($params, [
                                       'name' => 'required',
                                       'gender' => 'required'
                            ]);

if ($validator->fails()) {

         $messages = $validator->errors();
         $message   = $messages->first();
         echo $message;
         exit;
}

验证正在通过,因为字段实际上存在。使用类似于
min
max
size
的方法来验证字符串的长度

编辑 我被纠正了。
required
实际上似乎验证了它是否包含任何内容

更新
澄清;如果验证通过,
$validator->fails()
应该运行的代码永远不会运行。

它以什么方式不工作?你能详细说明一下吗?有什么错误吗?$message没有输出。你从打印($messages)中得到了什么;当您传递无效数据时,它不会执行任何验证。当你给它传递一个空字符串数组时,它会绕过代码吗?和
打印($messages);die()
没有输出?何时传递:$params=array('name'=>'','gender'=>'');它无法验证。在这种情况下,它应该验证名称。我不确定我是否知道问题出在哪里,如果我将您的代码粘贴到laravel的干净安装中,它将按预期工作。您能否更新问题以更清楚地描述您遇到的问题?