Laravel 4.2 WhereBetween不工作

时间:2015-07-28 07:05:43

标签: php laravel-4 eloquent where-clause

我有一个像下面结构的表, enter image description here

entry_added_date 正在存储日期等效字段,(2015-07-27)。

现在我想使用此字段在两个日期之间提交条目。

我尝试了下面的代码,

    $start = Input::get('start');
    $end = Input::get('end');

 $arr = DB::table('otc_revenue_entries')
        ->whereBetween('entry_added_date',array($start,$end))
        ->get();
 return Response::json(['data',$arr]);

我的代码中哪里出错了?

2 个答案:

答案 0 :(得分:2)

检查以下代码..

    $startdate = new DateTime($start);
    $start_date = $startdate->format("Y-m-d");
    $enddate = new DateTime($end);
    $end_date = $enddate->format("Y-m-d");

$arr = DB::table('otc_revenue_entries')
        ->leftJoin('otc_users','otc_users.user_id','=','otc_revenue_entries.entry_added_by')
        ->leftJoin('otc_branches','otc_branches.branch_id','=','otc_revenue_entries.entry_branch')
        ->whereBetween('entry_added_date',array($start_date,$end_date))
        ->get();

return Response::json(['data',$arr]);

答案 1 :(得分:0)

确保您的$ start和$ end实际上与您的entry_added_date格式相同,因此比较可能会失败。