Php Laravel 5如何在验证之前从控制器中的Boostrap datepicker更改日期格式
在进行验证之前,我想更改controller中的日期格式。 以下是我的看法Php Laravel 5如何在验证之前从控制器中的Boostrap datepicker更改日期格式,php,validation,date,laravel-5,Php,Validation,Date,Laravel 5,在进行验证之前,我想更改controller中的日期格式。 以下是我的看法 <input type='text' class="form-control" id='datePicker' value="{{old('dateRegister')}}" name="dateRegister"/> <script type="text/javascript"> $('#datePicker').datepicker({ format: 'DD - dd MM
<input type='text' class="form-control" id='datePicker' value="{{old('dateRegister')}}" name="dateRegister"/>
<script type="text/javascript">
$('#datePicker').datepicker({
format: 'DD - dd MM yyyy',
})
</script>
在$rule中,我需要检查每个用户只能有唯一的日期注册。
因为在数据库中存储日期的格式是Y-m-d,所以我可以修改日期格式并存储在数据库中
但我不知道如何在验证之前修改日期格式。这部分我该怎么做?我一直收到这个验证错误:日期寄存器与格式Y-m-d不匹配。首先,最好使用
$request
而不是Input
要在验证之前修改数据,请尝试以下操作:
$input = $request->all();
$date = str_replace("-", "", $input['dateRegister']);
$input['dateRegister'] = Carbon::parse($date)->format('Y-m-d');
$request->replace($input);
$validator = Validator::make($request->all(), $rules, $messages);
//Then your code
$input = $request->all();
$date = str_replace("-", "", $input['dateRegister']);
$input['dateRegister'] = Carbon::parse($date)->format('Y-m-d');
$request->replace($input);
$validator = Validator::make($request->all(), $rules, $messages);
//Then your code