碳日期检查是否为指定日期

时间:2017-09-28 09:23:30

标签: php laravel php-carbon

我的菜单中有一个链接,我将日期传递给过滤器。但我想实现这个目标:

  • 如果日期是工作日,我想要显示前一天。例如,如果是星期四,2017-09-28,我想在周三显示2017-09-27
  • 如果日期是周末,我想在周末前的周五上周末。例如,如果是2017-09-232017-09-24,我想显示2017-09-22
  • 如果日期是星期一,我想在上个星期五展示。例如,如果日期为2017-09-25,我想显示2017-09-23

现在我这样做了:

<li class="navMenu">
  <a href="/latest?date=
    @if (Carbon\Carbon::today()->isWeekday())

     {{Carbon\Carbon::yesterday()->format('Y-m-d')}}

    @else 
      {{Carbon\Carbon::now()->startOfWeek()->format('Y-m-d')}}
    @endif">{{ trans('language.newCampaigns') }}
   </a>
</li>

1 个答案:

答案 0 :(得分:2)

由于Carbon继承自date:

,因此您可以回退到本机PHP ->modify修饰符
<li class="navMenu">
  <a href="/latest?date={{Carbon\Carbon::today()->modify("last weekday")->format('Y-m-d')}}">    
   </a>
</li>
相关问题