畅聊一下:
因工作项目的需要,需要结算本周,上周等时间的业绩,而php没有提供获取本周开始及结束日期的方法,但是laravel提供了这这种方法(Carbon),如果正常使用的话可以用下面的多种方式来获取,但是如果按自定义开始时间的话,就会出错,比如周六当做周一,这个时候可以参照本人写过的一篇文章Carbon包的使用详解。
当前时间
2019-02-27 20:00:00
当前时间往前一周的开始及结束:
echo Carbon::now()->subWeek()->startOfWeek();//->timestamp;
echo "<br/>";
echo Carbon::now()->subWeek()->endOfWeek();//->timestamp;
echo "<br/>";
2019-02-18 00:00:00
2019-02-24 23:59:59
当前时间的当前周的开始及结束:
第一种:<和上周比加一个参数0>
echo Carbon::now()->subWeek(0)->startOfWeek();//->timestamp;
echo "<br/>";
echo Carbon::now()->subWeek(0)->endOfWeek();//->timestamp;
echo "<br/>";
第二种 <和上周比加一个参数0,并且函数变成复数>
echo Carbon::now()->subWeeks(0)->startOfWeek();//->timestamp;
echo "<br/>";
echo Carbon::now()->subWeeks(0)->endOfWeek();//->timestamp;
echo "<br/>";
第三种 <去掉中间的>
echo Carbon::now()->startOfWeek();//->timestamp;
echo "<br/>";
echo Carbon::now()->endOfWeek();//->timestamp;
echo "<br/>";
第四种
echo Carbon::now()->addWeek(0)->startOfWeek();//->timestamp;
echo "<br/>";
echo Carbon::now()->addWeek(0)->endOfWeek();//->timestamp;
echo "<br/>";
第五种
echo Carbon::now()->addWeeks(0)->startOfWeek();//->timestamp;
echo "<br/>";
echo Carbon::now()->addWeeks(0)->endOfWeek();//->timestamp;
echo "<br/>";
2019-02-25 00:00:00
2019-03-03 23:59:59