自定义阵列验证 - Lumen
Posted
技术标签:
【中文标题】自定义阵列验证 - Lumen【英文标题】:Validation on custom array - Lumen 【发布时间】:2015-09-15 12:17:21 【问题描述】:如何在 Lumen 框架中对自定义数组进行验证。例如:
示例数组:
$params = array('name' => 'john', 'gender' => 'male');
我尝试过类似的方法,但没有成功:
$validator = Validator::make($params, [
'name' => 'required',
'gender' => 'required'
]);
if ($validator->fails())
$messages = $validator->errors();
$message = $messages->first();
echo $message;
exit;
【问题讨论】:
在什么方面不起作用?你能详细说明一下吗?有没有错误? $message 没有输出吗?你从 print_r($messages); 得到什么?当你传递无效数据时? 它不执行任何验证。它绕过代码 当你传递一个空字符串数组时?和print_r($messages);die()
没有输出?
何时通过:$params = array('name' => '', 'gender' => '');它不验证。在这种情况下,它应该验证名称
我不确定我知道问题出在哪里,如果我将您的代码粘贴到 laravel 的全新安装中,它会按预期工作。您能否更新问题以更清楚地描述您遇到的问题?
【参考方案1】:
验证正在通过,因为这些字段实际上存在。使用 min
或 max
或 size
之类的东西来验证字符串的长度。
http://lumen.laravel.com/docs/validation#rule-required
编辑
我的立场是正确的。 required
实际上似乎确实验证了它是否包含任何内容。
更新
澄清;如果验证通过,则应该在$validator->fails()
不永远运行时运行的代码。
【讨论】:
以上是关于自定义阵列验证 - Lumen的主要内容,如果未能解决你的问题,请参考以下文章