Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.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
laravel 5.2从今天起接下来的3项活动_Laravel_Laravel 5.2 - Fatal编程技术网

laravel 5.2从今天起接下来的3项活动

laravel 5.2从今天起接下来的3项活动,laravel,laravel-5.2,Laravel,Laravel 5.2,我想设置一个活动日历。 用户必须看到从今天起接下来的3个事件 因此,当日期过去时,事件将消失 如何做?多谢各位 我的控制器: 类AccueilController扩展控制器{ 公共函数affichePage(){ $agenda=agenda::all()->take(3)->sortBy('date'); 返回视图('acueil.Page',compact('slides','agenda'); } } 由于您拨打电话的方式,您的代码未被排序。以下是目前正在发生的情况: $agenda =

我想设置一个活动日历。 用户必须看到从今天起接下来的3个事件 因此,当日期过去时,事件将消失 如何做?多谢各位

我的控制器:

类AccueilController扩展控制器{
公共函数affichePage(){
$agenda=agenda::all()->take(3)->sortBy('date');
返回视图('acueil.Page',compact('slides','agenda');
}
}

由于您拨打电话的方式,您的代码未被排序。以下是目前正在发生的情况:

$agenda = Agenda::all()
加载数据库中的每个议程

->take(3)
从我加载的所有议程中,选择前三个

->sortBy('date');
只按日期对这三个进行排序

根据你的要求,为了达到你看起来想要的,你会打电话

$agenda = Agenda::where('date', '>=', $the_date)->orderBy('date', 'asc')->take(3)->get();
其中$the_date是您希望作为最小日期的日期。通常,您可以使用Carbon library中的日期函数来执行以下操作:

$the_date = \Carbon\Carbon::now();
此查询强制在数据库中完成工作,并调用get最终检索结果。因此,我们告诉数据库:

  • 筛选所有议程,只筛选那些日期大于我们传入日期的议程
  • 按日期对筛选集排序,从最早的日期开始
  • 从过滤后的集合中取前三个
  • 将该设置返回到$HEADGES变量