Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何解决laravel中对象不能转化为闭包的问题_Php_Laravel - Fatal编程技术网

Php 如何解决laravel中对象不能转化为闭包的问题

Php 如何解决laravel中对象不能转化为闭包的问题,php,laravel,Php,Laravel,我想验证一个字段,在该字段中,员工可以按休假类别申请休假。在休假类别中,我指定了日期,当员工从该类别中请求休假时,他不能超过休假类别中指定的总天数,到目前为止,我尝试了这一点 $startdate = Carbon::parse($request->start_date); $enddate = Carbon::parse($request->end_date);; $diff = $startdate->diffInDays($enddate)

我想验证一个字段,在该字段中,员工可以按休假类别申请休假。在休假类别中,我指定了日期,当员工从该类别中请求休假时,他不能超过休假类别中指定的总天数,到目前为止,我尝试了这一点

$startdate = Carbon::parse($request->start_date);
        $enddate = Carbon::parse($request->end_date);;
        $diff = $startdate->diffInDays($enddate);
        $days=LeaveCategory::where('id',$request->category)->first();  
  'category' =>[
                'required',
                function($days,$diff,$fail){
                if($days->days < $diff){
                    return $fail("You cant");
            }
    }],
$startdate=Carbon::parse($request->start\u date);
$enddate=Carbon::解析($request->end_date);;
$diff=$startdate->diffInDays($enddate);
$days=LeaveCategory::where('id',$request->category)->first();
“类别”=>[
“必需”,
函数($days、$diff、$fail){
如果($days->days<$diff){
返回$fail(“您不能”);
}
}],

但它给了我一个错误,称为类闭包对象无法转换为字符串。请帮我解决这个问题

请使用
dd($request->start\u date)显示
$request->start\u date
的值我的计算很好,如果我dd($diff),那么我将得到10天,如果我dd($days->days),那么我将得到5天。顺便说一句,如果我添加了开始日期和结束日期,那么我将得到我现在的日期requesting@TanvirAhmed问题是当您通过函数内部验证时。我需要验证这个内部验证,那么我应该做什么呢?假设数组语法来自您正在生成的某个数组,而您没有显示该数组?你用的是什么版本的Laravel?