我想验证这样的数据
`three_number-three_number-three_number。它看起来像111-123-121。'
我正在使用Laravel。任何人都可以帮我验证这类数据。
答案 0 :(得分:2)
尝试使用regex
/[0-9]{3}-[0-9]{3}-[0-9]{3}/
模式
对于Laravel:'your_field_name' => 'required|regex:/[0-9]{3}-[0-9]{3}-[0-9]{3}/'
答案 1 :(得分:1)
您可以使用regex validation rule。在您的控制器中
public function store(Request $request)
{
$this->validate($request, [
'field_name' => 'required|regex:/[0-9]{3}-[0-9]{3}-[0-9]{3}/',
]);
// Use the validated value ...
$value = $request->input('field_name');
}
如果field_name
未通过验证规则,Laravel会将验证错误存储在会话中并自动重定向用户。
自v5.2起,Laravel支持阵列字段验证。因此,如果field_name
是一个数组,您可以使用
'field_name.*' => 'required|regex:/[0-9]{3}-[0-9]{3}-[0-9]{3}/'
请记住在输入名称中添加方括号,即
<input type="text" name="field_name[]" value="111-123-121" />
显示错误就像
一样简单@if ($errors->any())
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
此外,您可以在共享部分中提取上述代码段并在必要时包含它(最好在布局中)。