有人可以帮我从$validator->getData()
获得单一价值吗?我想在查询中使用时间和标题,但似乎我无法获得时间的价值。
以下是规则:
$this->validate($request, [
'name' => 'required|min:5|max:15',
'title' => 'required|min:5|max:100|availablee',
'time' => 'required|available|duration'
]);
这是availablee
的代码,我可以通过$value
获取标题的值,但我无法从array_get
获得时间值。
<?php
Validator::extend('availablee', function ($attribute, $value, $parameters, $validator) {
$time1 = array_get($validator->getData(), $parameters[4]);
$time = explode(" - ", $time1);
$start = $this->change_date_format($time[0]);
$end = $this->change_date_format($time[1]);
// Search for any possible clash with available events
$scene1 = DB::table('events')
->where('title', '==', $value)
->where('start_time', '<=', $start)
->where('end_time', '>=', $end)
->count();
if ($scene1 > 0) {
return false;
}
return true;
});
这段代码给了我......
CheckRoomAvailability.php第83行中的ErrorException:未定义的偏移量: 4
答案 0 :(得分:0)
使用此代码完成
$time1 = $validator->getData();
$time = explode(" - ",$time1['time'] );
而不是
$time1 = array_get($validator->getData(), $parameters[4]);
$time = explode(" - ",$time1 );